diff --git a/.eslintrc.json b/.eslintrc.json index 09229dd5c..5520b007b 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -7,6 +7,12 @@ "plugin:prettier/recommended", "plugin:react/jsx-runtime" ], + "plugins": [ + "formatjs" + ], + "settings": { + "formatjs": { "additionalFunctionNames": ["defineTranslations"] } + }, "parserOptions": { "project": "./tsconfig.json" }, @@ -19,6 +25,24 @@ "jest.setup.ts" ], "rules": { + // start of formatjs/recommended profile from next version + "formatjs/no-offset": "error", + //"formatjs/enforce-default-message": ["error", "literal"], + //"formatjs/enforce-description": ["error", "literal"], + "formatjs/enforce-placeholders": "error", + "formatjs/no-emoji": "error", + "formatjs/no-multiple-whitespaces": "error", + "formatjs/no-multiple-plurals": "error", + "formatjs/no-complex-selectors": ["error", { "limit": 20 }], + "formatjs/no-useless-message": "error", + "formatjs/prefer-pound-in-plural": "error", + //"formatjs/no-missing-icu-plural-one-placeholders": "error", //scan license header?... + "formatjs/enforce-plural-rules": ["error", { "one": true, "other": true }], + //"formatjs/no-literal-string-in-jsx": ["warn", { "props": { "include": [["*", "{label,placeholder,title}"]] } }], + "formatjs/blocklist-elements": ["error", ["selectordinal"]], + // end of formatjs/recommended profile + "formatjs/no-invalid-icu": "error", + "formatjs/prefer-formatted-message": "warn", "prettier/prettier": "warn", "curly": "error", "no-console": "off", diff --git a/.gitignore b/.gitignore index ca8df8763..25ca4fa3a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ /vite.config.mts-timestamp-* +/vite-config-mts-timestamp-*.js /coverage /dist /node_modules diff --git a/package-lock.json b/package-lock.json index 340a71dbc..f32ce9674 100644 --- a/package-lock.json +++ b/package-lock.json @@ -69,6 +69,7 @@ "eslint-config-prettier": "^9.1.0", "eslint-config-react-app": "^7.0.1", "eslint-plugin-flowtype": "^8.0.3", + "eslint-plugin-formatjs": "^4.13.3", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jsx-a11y": "^6.10.2", "eslint-plugin-prettier": "^4.2.1", @@ -3318,9 +3319,95 @@ "dev": true, "license": "MIT", "dependencies": { - "tslib": "2" + "@formatjs/intl-localematcher": "0.5.4", + "tslib": "^2.4.0" + } + }, + "node_modules/@formatjs/intl-localematcher/node_modules/@formatjs/intl-localematcher": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.4.tgz", + "integrity": "sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@formatjs/ts-transformer": { + "version": "3.13.14", + "resolved": "https://registry.npmjs.org/@formatjs/ts-transformer/-/ts-transformer-3.13.14.tgz", + "integrity": "sha512-TP/R54lxQ9Drzzimxrrt6yBT/xBofTgYl5wSTpyKe3Aq9vIBVcFmS6EOqycj0X34KGu3EpDPGO0ng8ZQZGLIFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@formatjs/icu-messageformat-parser": "2.7.8", + "@types/json-stable-stringify": "^1.0.32", + "@types/node": "14 || 16 || 17", + "chalk": "^4.0.0", + "json-stable-stringify": "^1.0.1", + "tslib": "^2.4.0", + "typescript": "5" + }, + "peerDependencies": { + "ts-jest": ">=27" + }, + "peerDependenciesMeta": { + "ts-jest": { + "optional": true + } + } + }, + "node_modules/@formatjs/ts-transformer/node_modules/@formatjs/ecma402-abstract": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.0.0.tgz", + "integrity": "sha512-rRqXOqdFmk7RYvj4khklyqzcfQl9vEL/usogncBHRZfZBDOwMGuSRNFl02fu5KGHXdbinju+YXyuR+Nk8xlr/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@formatjs/intl-localematcher": "0.5.4", + "tslib": "^2.4.0" + } + }, + "node_modules/@formatjs/ts-transformer/node_modules/@formatjs/icu-messageformat-parser": { + "version": "2.7.8", + "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.7.8.tgz", + "integrity": "sha512-nBZJYmhpcSX0WeJ5SDYUkZ42AgR3xiyhNCsQweFx3cz/ULJjym8bHAzWKvG5e2+1XO98dBYC0fWeeAECAVSwLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@formatjs/ecma402-abstract": "2.0.0", + "@formatjs/icu-skeleton-parser": "1.8.2", + "tslib": "^2.4.0" + } + }, + "node_modules/@formatjs/ts-transformer/node_modules/@formatjs/icu-skeleton-parser": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.2.tgz", + "integrity": "sha512-k4ERKgw7aKGWJZgTarIcNEmvyTVD9FYh0mTrrBMHZ1b8hUu6iOJ4SzsZlo3UNAvHYa+PnvntIwRPt1/vy4nA9Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@formatjs/ecma402-abstract": "2.0.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@formatjs/ts-transformer/node_modules/@formatjs/intl-localematcher": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.4.tgz", + "integrity": "sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" } }, + "node_modules/@formatjs/ts-transformer/node_modules/@types/node": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", + "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==", + "dev": true, + "license": "MIT" + }, "node_modules/@hookform/resolvers": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-4.0.0.tgz", @@ -5857,6 +5944,13 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/json-stable-stringify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/json-stable-stringify/-/json-stable-stringify-1.1.0.tgz", + "integrity": "sha512-ESTsHWB72QQq+pjUFIbEz9uSCZppD31YrVkbt2rnUciTYEvcwN6uZIhX5JZeBHqRlFJ41x/7MewCs7E2Qux6Cg==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -5904,6 +5998,13 @@ "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "license": "MIT" }, + "node_modules/@types/picomatch": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/picomatch/-/picomatch-2.3.4.tgz", + "integrity": "sha512-0so8lU8O5zatZS/2Fi4zrwks+vZv7e0dygrgEZXljODXBig97l4cPQD+9LabXfGJOWwoRkTVz6Q4edZvD12UOA==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/prop-types": { "version": "15.7.14", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.14.tgz", @@ -9091,6 +9192,221 @@ "eslint": "^8.1.0" } }, + "node_modules/eslint-plugin-formatjs": { + "version": "4.13.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-formatjs/-/eslint-plugin-formatjs-4.13.3.tgz", + "integrity": "sha512-4j3IVwaLEXblnvH2/ZIOZwc9zaaZf2+zyn/b8oLJRt6kMCTu2rIs4UsIxy5nBRYZzsBSh7k34JJ5/ngGtJ3kYw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@formatjs/icu-messageformat-parser": "2.7.8", + "@formatjs/ts-transformer": "3.13.14", + "@types/eslint": "7 || 8", + "@types/picomatch": "^2.3.0", + "@typescript-eslint/utils": "^6.18.1", + "emoji-regex": "^10.2.1", + "magic-string": "^0.30.0", + "picomatch": "^2.3.1", + "tslib": "2.6.2", + "typescript": "5", + "unicode-emoji-utils": "^1.2.0" + }, + "peerDependencies": { + "eslint": "7 || 8" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@formatjs/ecma402-abstract": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.0.0.tgz", + "integrity": "sha512-rRqXOqdFmk7RYvj4khklyqzcfQl9vEL/usogncBHRZfZBDOwMGuSRNFl02fu5KGHXdbinju+YXyuR+Nk8xlr/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@formatjs/intl-localematcher": "0.5.4", + "tslib": "^2.4.0" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@formatjs/icu-messageformat-parser": { + "version": "2.7.8", + "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.7.8.tgz", + "integrity": "sha512-nBZJYmhpcSX0WeJ5SDYUkZ42AgR3xiyhNCsQweFx3cz/ULJjym8bHAzWKvG5e2+1XO98dBYC0fWeeAECAVSwLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@formatjs/ecma402-abstract": "2.0.0", + "@formatjs/icu-skeleton-parser": "1.8.2", + "tslib": "^2.4.0" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@formatjs/icu-skeleton-parser": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.2.tgz", + "integrity": "sha512-k4ERKgw7aKGWJZgTarIcNEmvyTVD9FYh0mTrrBMHZ1b8hUu6iOJ4SzsZlo3UNAvHYa+PnvntIwRPt1/vy4nA9Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@formatjs/ecma402-abstract": "2.0.0", + "tslib": "^2.4.0" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@formatjs/intl-localematcher": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.4.tgz", + "integrity": "sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/emoji-regex": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", + "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==", + "dev": true, + "license": "MIT" + }, + "node_modules/eslint-plugin-formatjs/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-formatjs/node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "dev": true, + "license": "0BSD" + }, "node_modules/eslint-plugin-import": { "version": "2.31.0", "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", @@ -12353,6 +12669,26 @@ "dev": true, "license": "MIT" }, + "node_modules/json-stable-stringify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.2.1.tgz", + "integrity": "sha512-Lp6HbbBgosLmJbjx0pBLbgvx68FaFU1sdkmBuckmhhJ88kL13OA51CDtR2yJB50eCNMH9wRqtQNNiAqQH4YXnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "isarray": "^2.0.5", + "jsonify": "^0.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", @@ -12396,6 +12732,16 @@ "node": ">= 10.0.0" } }, + "node_modules/jsonify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", + "dev": true, + "license": "Public Domain", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/jsx-ast-utils": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", @@ -15996,6 +16342,23 @@ "node": ">=4" } }, + "node_modules/unicode-emoji-utils": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-emoji-utils/-/unicode-emoji-utils-1.2.0.tgz", + "integrity": "sha512-djUB91p/6oYpgps4W5K/MAvM+UspoAANHSUW495BrxeLRoned3iNPEDQgrKx9LbLq93VhNz0NWvI61vcfrwYoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "10.3.0" + } + }, + "node_modules/unicode-emoji-utils/node_modules/emoji-regex": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", + "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", + "dev": true, + "license": "MIT" + }, "node_modules/unicode-match-property-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", diff --git a/package.json b/package.json index c319e4fe1..a57db0df1 100644 --- a/package.json +++ b/package.json @@ -111,6 +111,7 @@ "eslint-config-prettier": "^9.1.0", "eslint-config-react-app": "^7.0.1", "eslint-plugin-flowtype": "^8.0.3", + "eslint-plugin-formatjs": "^4.13.3", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jsx-a11y": "^6.10.2", "eslint-plugin-prettier": "^4.2.1", diff --git a/src/components/inputs/reactHookForm/agGridTable/csvUploader/CsvUploader.tsx b/src/components/inputs/reactHookForm/agGridTable/csvUploader/CsvUploader.tsx index 8033d0ced..b08c91d3d 100644 --- a/src/components/inputs/reactHookForm/agGridTable/csvUploader/CsvUploader.tsx +++ b/src/components/inputs/reactHookForm/agGridTable/csvUploader/CsvUploader.tsx @@ -152,7 +152,9 @@ export function CsvUploader({ Confirmation - {intl.formatMessage({ id: 'keepCSVDataMessage' })} + + + diff --git a/src/components/inputs/reactQueryBuilder/PropertyValueEditor.tsx b/src/components/inputs/reactQueryBuilder/PropertyValueEditor.tsx index 9fffb5b84..c1223d777 100644 --- a/src/components/inputs/reactQueryBuilder/PropertyValueEditor.tsx +++ b/src/components/inputs/reactQueryBuilder/PropertyValueEditor.tsx @@ -9,9 +9,8 @@ import { useCallback, useEffect, useMemo } from 'react'; import Grid from '@mui/material/Grid'; import { Autocomplete, FormControl, MenuItem, Select, SelectChangeEvent, TextField } from '@mui/material'; import { ValueEditorProps } from 'react-querybuilder'; -import { useIntl } from 'react-intl'; +import { FormattedMessage, useIntl } from 'react-intl'; import { useValid } from './hooks/useValid'; - import { OPERATOR_OPTIONS } from '../../filter/expert/expertFilterConstants'; import { FieldConstants } from '../../../utils/constants/fieldConstants'; import { usePredefinedProperties } from '../../../hooks/usePredefinedProperties'; @@ -101,7 +100,7 @@ export function PropertyValueEditor(props: ExpertFilterPropertyProps) { > {PROPERTY_VALUE_OPERATORS.map((operator) => ( - {intl.formatMessage({ id: operator.label })} + ))} diff --git a/src/components/inputs/reactQueryBuilder/compositeRuleEditor/RuleValueEditor.tsx b/src/components/inputs/reactQueryBuilder/compositeRuleEditor/RuleValueEditor.tsx index 3963b1f7b..51a5afb54 100644 --- a/src/components/inputs/reactQueryBuilder/compositeRuleEditor/RuleValueEditor.tsx +++ b/src/components/inputs/reactQueryBuilder/compositeRuleEditor/RuleValueEditor.tsx @@ -6,7 +6,7 @@ */ import { ValueEditorProps } from 'react-querybuilder'; import { Grid, MenuItem, Select, Typography } from '@mui/material'; -import { useIntl } from 'react-intl'; +import { FormattedMessage } from 'react-intl'; import { CompositeRule, OperatorOption } from '../../../filter/expert/expertFilter.type'; const styles = { @@ -31,7 +31,6 @@ export function RuleValueEditor(props: RuleValueEditorProps) { rule, handleOnChangeRule, } = props; - const intl = useIntl(); // set operator as the previous in rule if exists, otherwise the first operator in schema is selected const operator = rule?.operator ?? (fieldData.operators as OperatorOption[])?.map((op) => op.name)[0]; @@ -54,7 +53,9 @@ export function RuleValueEditor(props: RuleValueEditorProps) { return ( - {intl.formatMessage({ id: fieldData.label })} + + + diff --git a/src/components/topBar/UserInformationDialog.tsx b/src/components/topBar/UserInformationDialog.tsx index e2e287997..740b3cc4b 100644 --- a/src/components/topBar/UserInformationDialog.tsx +++ b/src/components/topBar/UserInformationDialog.tsx @@ -99,8 +99,12 @@ function UserInformationDialog({ openDialog, user, onClose }: UserInformationDia {userDetails?.maxAllowedCases} - ( : - {` ${userDetails?.numberCasesUsed}`} ) + ( + + ) diff --git a/src/index.ts b/src/index.ts index 7704009da..5f13e9d5a 100644 --- a/src/index.ts +++ b/src/index.ts @@ -10,5 +10,6 @@ export * from './hooks'; export * from './redux'; export * from './services'; export * from './utils'; +export * from './translations/utils'; export * from './translations/en'; export * from './translations/fr'; diff --git a/src/translations/en/cardErrorBoundaryEn.ts b/src/translations/en/cardErrorBoundaryEn.ts index bd4d8f27f..18fdd3c2a 100644 --- a/src/translations/en/cardErrorBoundaryEn.ts +++ b/src/translations/en/cardErrorBoundaryEn.ts @@ -1,12 +1,18 @@ -/** +/* * Copyright (c) 2022, RTE (http://www.rte-france.com) * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -export const cardErrorBoundaryEn = { - 'card_error_boundary/title': 'Sorry, unexpected error :(', - 'card_error_boundary/content': 'Please reload, or close and reopen this application, or contact support.', - 'card_error_boundary/expandederrorheader': 'Error message (and see more information in the developper console):', -}; +import { defineMessages } from '../utils'; + +export const cardErrorBoundaryEn = defineMessages({ + 'card_error_boundary/title': { defaultMessage: 'Sorry, unexpected error :(' }, + 'card_error_boundary/content': { + defaultMessage: 'Please reload, or close and reopen this application, or contact support.', + }, + 'card_error_boundary/expandederrorheader': { + defaultMessage: 'Error message (and see more information in the developer console):', + }, +}); diff --git a/src/translations/en/commonButtonEn.ts b/src/translations/en/commonButtonEn.ts index 839a024d4..34db78493 100644 --- a/src/translations/en/commonButtonEn.ts +++ b/src/translations/en/commonButtonEn.ts @@ -4,10 +4,11 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const commonButtonEn = { - cancel: 'Cancel', - validate: 'Validate', - 'button.changeType': 'Change', - 'button.changeOperator': 'Change', -}; +export const commonButtonEn = defineMessages({ + cancel: { defaultMessage: 'Cancel' }, + validate: { defaultMessage: 'Validate' }, + 'button.changeType': { defaultMessage: 'Change' }, + 'button.changeOperator': { defaultMessage: 'Change' }, +}); diff --git a/src/translations/en/componentsEn.ts b/src/translations/en/componentsEn.ts index a9b03a10e..29e6ec77a 100644 --- a/src/translations/en/componentsEn.ts +++ b/src/translations/en/componentsEn.ts @@ -4,8 +4,9 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const componentsEn = { - notBuiltNodeTooltip: 'Value from last built node in current branch', - builtNodeTooltip: 'Current value taking into account all applied modifications', -}; +export const componentsEn = defineMessages({ + notBuiltNodeTooltip: { defaultMessage: 'Value from last built node in current branch' }, + builtNodeTooltip: { defaultMessage: 'Current value taking into account all applied modifications' }, +}); diff --git a/src/translations/en/csvEn.ts b/src/translations/en/csvEn.ts index 9d1a146fa..52d6c92e2 100644 --- a/src/translations/en/csvEn.ts +++ b/src/translations/en/csvEn.ts @@ -4,14 +4,17 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const csvEn = { - ImportCSV: 'Import CSV', - noDataInCsvFile: 'No data found in this file', - wrongCsvHeadersError: - 'This CSV file has the wrong headers. Use Generate CSV Skeleton button to get supported CSV format', - keepCSVDataMessage: 'Do you want to replace or add the new data to the current list ?', - GenerateCSV: 'Generate CSV skeleton', - UploadCSV: 'Upload CSV', - uploadMessage: ' No file selected', -}; +export const csvEn = defineMessages({ + ImportCSV: { defaultMessage: 'Import CSV' }, + noDataInCsvFile: { defaultMessage: 'No data found in this file' }, + wrongCsvHeadersError: { + defaultMessage: + 'This CSV file has the wrong headers. Use Generate CSV Skeleton button to get supported CSV format', + }, + keepCSVDataMessage: { defaultMessage: 'Do you want to replace or add the new data to the current list?' }, + GenerateCSV: { defaultMessage: 'Generate CSV skeleton' }, + UploadCSV: { defaultMessage: 'Upload CSV' }, + uploadMessage: { defaultMessage: 'No file selected' }, +}); diff --git a/src/translations/en/descriptionEn.ts b/src/translations/en/descriptionEn.ts index b103cc7fd..5741fa538 100644 --- a/src/translations/en/descriptionEn.ts +++ b/src/translations/en/descriptionEn.ts @@ -4,11 +4,12 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const descriptionEn = { - description: 'Description', - descriptionProperty: 'Description', - descriptionModificationError: 'An error occurred while editing the description', - descriptionLimitError: 'Description exceeds character limit', - AddDescription: 'Add a description', -}; +export const descriptionEn = defineMessages({ + description: { defaultMessage: 'Description' }, + descriptionProperty: { defaultMessage: 'Description' }, + descriptionModificationError: { defaultMessage: 'An error occurred while editing the description' }, + descriptionLimitError: { defaultMessage: 'Description exceeds character limit' }, + AddDescription: { defaultMessage: 'Add a description' }, +}); diff --git a/src/translations/en/directoryItemsInputEn.ts b/src/translations/en/directoryItemsInputEn.ts index 35c289ade..82aa01031 100644 --- a/src/translations/en/directoryItemsInputEn.ts +++ b/src/translations/en/directoryItemsInputEn.ts @@ -4,7 +4,8 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const directoryItemsInputEn = { - 'directory_items_input/ElementAlreadyUsed': 'This element is already used', -}; +export const directoryItemsInputEn = defineMessages({ + 'directory_items_input/ElementAlreadyUsed': { defaultMessage: 'This element is already used' }, +}); diff --git a/src/translations/en/elementSearchEn.ts b/src/translations/en/elementSearchEn.ts index 20f2738d1..e15d6cd9d 100644 --- a/src/translations/en/elementSearchEn.ts +++ b/src/translations/en/elementSearchEn.ts @@ -4,8 +4,9 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const elementSearchEn = { - 'element_search/label': 'Search for an element', - 'element_search/noResult': 'No result', -}; +export const elementSearchEn = defineMessages({ + 'element_search/label': { defaultMessage: 'Search for an element' }, + 'element_search/noResult': { defaultMessage: 'No result' }, +}); diff --git a/src/translations/en/equipmentSearchEn.ts b/src/translations/en/equipmentSearchEn.ts index 06a1fb979..3f14946a1 100644 --- a/src/translations/en/equipmentSearchEn.ts +++ b/src/translations/en/equipmentSearchEn.ts @@ -4,24 +4,25 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const equipmentSearchEn = { - 'equipment_search/label': 'Search for an equipment', - 'equipment_search/switchTag': 'SWITCH', - 'equipment_search/busbarSectionTag': 'BBS', - 'equipment_search/lineTag': 'LINE', - 'equipment_search/2wtTag': '2W TRANSFO', - 'equipment_search/3wtTag': '3W TRANSFO', - 'equipment_search/generatorTag': 'GENERATOR', - 'equipment_search/batteryTag': 'BATTERY', - 'equipment_search/loadTag': 'LOAD', - 'equipment_search/shuntTag': 'SHUNT', - 'equipment_search/svcTag': 'SVC', - 'equipment_search/hvdcLineTag': 'HVDC LINE', - 'equipment_search/hvdcLineVscTag': 'HVDC LINE (VSC)', - 'equipment_search/hvdcLineLccTag': 'HVDC LINE (LCC)', - 'equipment_search/hvdcStationTag': 'HVDC STATION', - 'equipment_search/voltageLevelTag': 'VOLTAGE LEVEL', - 'equipment_search/substationTag': 'SUBSTATION', - 'equipment_search/busTag': 'BUS', -}; +export const equipmentSearchEn = defineMessages({ + 'equipment_search/label': { defaultMessage: 'Search for an equipment' }, + 'equipment_search/switchTag': { defaultMessage: 'SWITCH' }, + 'equipment_search/busbarSectionTag': { defaultMessage: 'BBS' }, + 'equipment_search/lineTag': { defaultMessage: 'LINE' }, + 'equipment_search/2wtTag': { defaultMessage: '2W TRANSFO' }, + 'equipment_search/3wtTag': { defaultMessage: '3W TRANSFO' }, + 'equipment_search/generatorTag': { defaultMessage: 'GENERATOR' }, + 'equipment_search/batteryTag': { defaultMessage: 'BATTERY' }, + 'equipment_search/loadTag': { defaultMessage: 'LOAD' }, + 'equipment_search/shuntTag': { defaultMessage: 'SHUNT' }, + 'equipment_search/svcTag': { defaultMessage: 'SVC' }, + 'equipment_search/hvdcLineTag': { defaultMessage: 'HVDC LINE' }, + 'equipment_search/hvdcLineVscTag': { defaultMessage: 'HVDC LINE (VSC)' }, + 'equipment_search/hvdcLineLccTag': { defaultMessage: 'HVDC LINE (LCC)' }, + 'equipment_search/hvdcStationTag': { defaultMessage: 'HVDC STATION' }, + 'equipment_search/voltageLevelTag': { defaultMessage: 'VOLTAGE LEVEL' }, + 'equipment_search/substationTag': { defaultMessage: 'SUBSTATION' }, + 'equipment_search/busTag': { defaultMessage: 'BUS' }, +}); diff --git a/src/translations/en/equipmentsEn.ts b/src/translations/en/equipmentsEn.ts index 8940943e2..9634486bc 100644 --- a/src/translations/en/equipmentsEn.ts +++ b/src/translations/en/equipmentsEn.ts @@ -4,24 +4,25 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const equipmentsEn = { - Substations: 'Substations', - VoltageLevels: 'Voltage levels', - Lines: 'Lines', - TwoWindingsTransformers: 'Two windings transformers', - ThreeWindingsTransformers: 'Three windings transformers', - Generators: 'Generators', - Loads: 'Loads', - Batteries: 'Batteries', - ShuntCompensators: 'Shunt compensators', - Hydro: 'Hydro', - Nuclear: 'Nuclear', - Wind: 'Wind', - Thermal: 'Thermal', - Solar: 'Solar', - Other: 'Other', - LccConverterStations: 'LCC converter stations', - VscConverterStations: 'VSC converter stations', - StaticVarCompensators: 'Static var compensators', -}; +export const equipmentsEn = defineMessages({ + Substations: { defaultMessage: 'Substations' }, + VoltageLevels: { defaultMessage: 'Voltage levels' }, + Lines: { defaultMessage: 'Lines' }, + TwoWindingsTransformers: { defaultMessage: 'Two windings transformers' }, + ThreeWindingsTransformers: { defaultMessage: 'Three windings transformers' }, + Generators: { defaultMessage: 'Generators' }, + Loads: { defaultMessage: 'Loads' }, + Batteries: { defaultMessage: 'Batteries' }, + ShuntCompensators: { defaultMessage: 'Shunt compensators' }, + Hydro: { defaultMessage: 'Hydro' }, + Nuclear: { defaultMessage: 'Nuclear' }, + Wind: { defaultMessage: 'Wind' }, + Thermal: { defaultMessage: 'Thermal' }, + Solar: { defaultMessage: 'Solar' }, + Other: { defaultMessage: 'Other' }, + LccConverterStations: { defaultMessage: 'LCC converter stations' }, + VscConverterStations: { defaultMessage: 'VSC converter stations' }, + StaticVarCompensators: { defaultMessage: 'Static var compensators' }, +}); diff --git a/src/translations/en/external/exportParamsEn.ts b/src/translations/en/external/exportParamsEn.ts index 88f8ba1a4..55cd313f4 100644 --- a/src/translations/en/external/exportParamsEn.ts +++ b/src/translations/en/external/exportParamsEn.ts @@ -4,131 +4,166 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -export const exportParamsEn = { - 'iidm.export.cgmes.base-name': 'Base name', - 'iidm.export.cgmes.base-name.desc': 'Basename for output files', - 'iidm.export.cgmes.cim-version': 'CIM version', - 'iidm.export.cgmes.cim-version.desc': 'CIM version to export', - 'iidm.export.cgmes.cim-version.14': '14', - 'iidm.export.cgmes.cim-version.16': '16', - 'iidm.export.cgmes.cim-version.100': '100', - 'iidm.export.cgmes.export-boundary-power-flows': 'Export boundary power flows', - 'iidm.export.cgmes.export-boundary-power-flows.desc': "Export boundaries' power flows", - 'iidm.export.cgmes.export-power-flows-for-switches': 'Export power flows for switches', - 'iidm.export.cgmes.export-power-flows-for-switches.desc': 'Export power flows for switches', - 'iidm.export.cgmes.naming-strategy': 'Naming strategy', - 'iidm.export.cgmes.naming-strategy.desc': 'Configure what type of naming strategy you want', - 'iidm.export.cgmes.naming-strategy.identity': 'identity', - 'iidm.export.cgmes.naming-strategy.cgmes': 'cgmes', - 'iidm.export.cgmes.naming-strategy.cgmes-fix-all-invalid-ids': 'cgmes-fix-all-invalid-ids', - 'iidm.export.cgmes.profiles': 'Profiles', - 'iidm.export.cgmes.profiles.desc': 'Profiles to export', - 'iidm.export.cgmes.profiles.EQ': 'EQ', - 'iidm.export.cgmes.profiles.TP': 'TP', - 'iidm.export.cgmes.profiles.SSH': 'SSH', - 'iidm.export.cgmes.profiles.SV': 'SV', - 'iidm.export.cgmes.boundary-EQ-identifier': 'Boundary EQ model identifier', - 'iidm.export.cgmes.boundary-EQ-identifier.desc': 'Boundary EQ model identifier', - 'iidm.export.cgmes.boundary-TP-identifier': 'Boundary TP model identifier', - 'iidm.export.cgmes.boundary-TP-identifier.desc': 'Boundary TP model identifier', - 'iidm.export.cgmes.modeling-authority-set': 'Modeling authority set', - 'iidm.export.cgmes.modeling-authority-set.desc': 'Modeling authority set', - 'ucte.export.naming-strategy': 'Naming strategy', - 'ucte.export.naming-strategy.desc': 'Default naming strategy for UCTE codes conversion', - 'ucte.export.combine-phase-angle-regulation': 'Combine phase and angle regulation', - 'ucte.export.combine-phase-angle-regulation.desc': 'Combine phase and angle regulation', - 'iidm.export.xml.indent': 'Indent', - 'iidm.export.xml.indent.desc': 'Indent export output file', - 'iidm.export.xml.with-branch-state-variables': 'With branch state variable', - 'iidm.export.xml.with-branch-state-variables.desc': 'Export network with branch state variables', - 'iidm.export.xml.only-main-cc': 'Only main CC', - 'iidm.export.xml.only-main-cc.desc': 'Export only main CC', - 'iidm.export.xml.anonymised': 'Anonymise exported network', - 'iidm.export.xml.anonymised.desc': 'Anonymise exported network', - 'iidm.export.xml.iidm-version-incompatibility-behavior': 'Behavior when there is an IIDM version incompatibility', - 'iidm.export.xml.iidm-version-incompatibility-behavior.desc': - 'Behavior when there is an IIDM version incompatibility', - 'iidm.export.xml.iidm-version-incompatibility-behavior.THROW_EXCEPTION': 'Throw exception', - 'iidm.export.xml.iidm-version-incompatibility-behavior.LOG_ERROR': 'Log error', - 'iidm.export.xml.topology-level': 'Topology Level', - 'iidm.export.xml.topology-level.desc': 'Export network in this topology level', - 'iidm.export.xml.topology-level.BUS_BRANCH': 'BUS_BRANCH', - 'iidm.export.xml.topology-level.BUS_BREAKER': 'BUS_BREAKER', - 'iidm.export.xml.topology-level.NODE_BREAKER': 'NODE_BREAKER', - 'iidm.export.xml.throw-exception-if-extension-not-found': 'Throw exception if extension not found', - 'iidm.export.xml.throw-exception-if-extension-not-found.desc': 'Throw exception if extension not found', - 'iidm.export.xml.extensions': 'Extensions', - 'iidm.export.xml.extensions.selectionDialog.name': 'Extensions selection', - 'iidm.export.xml.extensions.desc': 'The list of exported extensions', - 'iidm.export.xml.extensions.activePowerControl': 'Active power control', - 'iidm.export.xml.extensions.baseVoltageMapping': 'Base voltage mapping', - 'iidm.export.xml.extensions.branchObservability': 'Branch observability', - 'iidm.export.xml.extensions.busbarSectionPosition': 'Busbar section position', - 'iidm.export.xml.extensions.branchStatus': 'Branch status (IIDM version < 1.12)', - 'iidm.export.xml.extensions.cgmesControlAreas': 'Cgmes control areas', - 'iidm.export.xml.extensions.cgmesDanglingLineBoundaryNode': 'Cgmes dangling line boundary node', - 'iidm.export.xml.extensions.cgmesLineBoundaryNode': 'Cgmes line boundary node', - 'iidm.export.xml.extensions.cgmesMetadataModels': 'Cgmes models metadata', - 'iidm.export.xml.extensions.cgmesSshMetadata': 'Cgmes ssh metadata', - 'iidm.export.xml.extensions.cgmesSvMetadata': 'Cgmes sv metadata', - 'iidm.export.xml.extensions.cgmesTapChangers': 'Cgmes tap changers', - 'iidm.export.xml.extensions.cimCharacteristics': 'Cgmes characteristics', - 'iidm.export.xml.extensions.coordinatedReactiveControl': 'Coordinated reactive control', - 'iidm.export.xml.extensions.detail': 'Load detail', - 'iidm.export.xml.extensions.discreteMeasurements': 'Discrete measurements', - 'iidm.export.xml.extensions.entsoeArea': 'Entsoe area', - 'iidm.export.xml.extensions.entsoeCategory': 'Entsoe category', - 'iidm.export.xml.extensions.generatorActivePowerControl': 'Generator active power control', - 'iidm.export.xml.extensions.generatorFortescue': 'Generator asymmetrical', - 'iidm.export.xml.extensions.generatorAsymmetrical': 'Generator asymmetrical', - 'iidm.export.xml.extensions.generatorRemoteReactivePowerControl': 'Generator remote reactive power control', - 'iidm.export.xml.extensions.generatorShortCircuit': 'Generator short-circuit', - 'iidm.export.xml.extensions.generatorShortCircuits': 'Generator short-circuit (IIDM version 1.0)', - 'iidm.export.xml.extensions.hvdcAngleDroopActivePowerControl': 'HVDC angle droop active power control', - 'iidm.export.xml.extensions.hvdcOperatorActivePowerRange': 'HVDC operator active power range', - 'iidm.export.xml.extensions.identifiableShortCircuit': 'Identifiable short-circuit', - 'iidm.export.xml.extensions.injectionObservability': 'Injection observability', - 'iidm.export.xml.extensions.lineFortescue': 'Line asymmetrical', - 'iidm.export.xml.extensions.lineAsymmetrical': 'Line asymmetrical', - 'iidm.export.xml.extensions.linePosition': 'Line position', - 'iidm.export.xml.extensions.loadFortescue': 'Load asymmetrical', - 'iidm.export.xml.extensions.loadAsymmetrical': 'Load asymmetrical', - 'iidm.export.xml.extensions.measurements': 'Measurements', - 'iidm.export.xml.extensions.mergedXnode': 'Merged Xnode', - 'iidm.export.xml.extensions.operatingStatus': 'Operating status', - 'iidm.export.xml.extensions.position': 'Connectable position', - 'iidm.export.xml.extensions.referencePriorities': 'Reference priorities (LoadFlow)', - 'iidm.export.xml.extensions.referenceTerminals': 'Reference terminals (LoadFlow)', - 'iidm.export.xml.extensions.secondaryVoltageControl': 'Secondary voltage control', - 'iidm.export.xml.extensions.slackTerminal': 'Slack terminal', - 'iidm.export.xml.extensions.standbyAutomaton': 'Static var compensators automaton', - 'iidm.export.xml.extensions.startup': 'Generator startup', - 'iidm.export.xml.extensions.substationPosition': 'Substation position', - 'iidm.export.xml.extensions.threeWindingsTransformerFortescue': 'Three windings transformer asymmetrical', - 'iidm.export.xml.extensions.threeWindingsTransformerAsymmetrical': 'Three windings transformer asymmetrical', - 'iidm.export.xml.extensions.threeWindingsTransformerPhaseAngleClock': - 'Three windings transformer phase angle clock', - 'iidm.export.xml.extensions.threeWindingsTransformerToBeEstimated': 'Three windings transformer to be estimated', - 'iidm.export.xml.extensions.twoWindingsTransformerFortescue': 'Two windings transformer asymmetrical', - 'iidm.export.xml.extensions.twoWindingsTransformerAsymmetrical': 'Two windings transformer asymmetrical', - 'iidm.export.xml.extensions.twoWindingsTransformerPhaseAngleClock': 'Two windings transformer phase angle clock', - 'iidm.export.xml.extensions.twoWindingsTransformerToBeEstimated': 'Two windings transformer to be estimated', - 'iidm.export.xml.extensions.voltageLevelShortCircuits': 'Voltage level short circuits', - 'iidm.export.xml.extensions.voltagePerReactivePowerControl': 'Voltage per reactive power control', - 'iidm.export.xml.extensions.voltageRegulation': 'Voltage regulation', - 'iidm.export.xml.sorted': 'Sort export output file', - 'iidm.export.xml.sorted.desc': 'Sort export output file', - 'iidm.export.xml.version': 'IIDM Version', - 'iidm.export.xml.version.desc': 'IIDM-XML version in which files will be generated', - 'iidm.export.xml.version.1.0': '1.0', - 'iidm.export.xml.version.1.1': '1.1', - 'iidm.export.xml.version.1.2': '1.2', - 'iidm.export.xml.version.1.3': '1.3', - 'iidm.export.xml.version.1.4': '1.4', - 'iidm.export.xml.version.1.5': '1.5', - 'iidm.export.xml.version.1.6': '1.6', - 'iidm.export.xml.version.1.7': '1.7', - 'iidm.export.xml.version.1.8': '1.8', - 'iidm.export.xml.version.1.9': '1.9', - 'iidm.export.xml.version.1.10': '1.10', -}; + +import { defineMessages } from '../../utils'; + +export const exportParamsEn = defineMessages({ + 'iidm.export.cgmes.base-name': { defaultMessage: 'Base name' }, + 'iidm.export.cgmes.base-name.desc': { defaultMessage: 'Basename for output files' }, + 'iidm.export.cgmes.cim-version': { defaultMessage: 'CIM version' }, + 'iidm.export.cgmes.cim-version.desc': { defaultMessage: 'CIM version to export' }, + 'iidm.export.cgmes.cim-version.14': { defaultMessage: '14' }, + 'iidm.export.cgmes.cim-version.16': { defaultMessage: '16' }, + 'iidm.export.cgmes.cim-version.100': { defaultMessage: '100' }, + 'iidm.export.cgmes.export-boundary-power-flows': { defaultMessage: 'Export boundary power flows' }, + 'iidm.export.cgmes.export-boundary-power-flows.desc': { defaultMessage: "Export boundaries' power flows" }, + 'iidm.export.cgmes.export-power-flows-for-switches': { defaultMessage: 'Export power flows for switches' }, + 'iidm.export.cgmes.export-power-flows-for-switches.desc': { defaultMessage: 'Export power flows for switches' }, + 'iidm.export.cgmes.naming-strategy': { defaultMessage: 'Naming strategy' }, + 'iidm.export.cgmes.naming-strategy.desc': { defaultMessage: 'Configure what type of naming strategy you want' }, + 'iidm.export.cgmes.naming-strategy.identity': { defaultMessage: 'identity' }, + 'iidm.export.cgmes.naming-strategy.cgmes': { defaultMessage: 'cgmes' }, + 'iidm.export.cgmes.naming-strategy.cgmes-fix-all-invalid-ids': { defaultMessage: 'cgmes-fix-all-invalid-ids' }, + 'iidm.export.cgmes.profiles': { defaultMessage: 'Profiles' }, + 'iidm.export.cgmes.profiles.desc': { defaultMessage: 'Profiles to export' }, + 'iidm.export.cgmes.profiles.EQ': { defaultMessage: 'EQ' }, + 'iidm.export.cgmes.profiles.TP': { defaultMessage: 'TP' }, + 'iidm.export.cgmes.profiles.SSH': { defaultMessage: 'SSH' }, + 'iidm.export.cgmes.profiles.SV': { defaultMessage: 'SV' }, + 'iidm.export.cgmes.boundary-EQ-identifier': { defaultMessage: 'Boundary EQ model identifier' }, + 'iidm.export.cgmes.boundary-EQ-identifier.desc': { defaultMessage: 'Boundary EQ model identifier' }, + 'iidm.export.cgmes.boundary-TP-identifier': { defaultMessage: 'Boundary TP model identifier' }, + 'iidm.export.cgmes.boundary-TP-identifier.desc': { defaultMessage: 'Boundary TP model identifier' }, + 'iidm.export.cgmes.modeling-authority-set': { defaultMessage: 'Modeling authority set' }, + 'iidm.export.cgmes.modeling-authority-set.desc': { defaultMessage: 'Modeling authority set' }, + 'ucte.export.naming-strategy': { defaultMessage: 'Naming strategy' }, + 'ucte.export.naming-strategy.desc': { defaultMessage: 'Default naming strategy for UCTE codes conversion' }, + 'ucte.export.combine-phase-angle-regulation': { defaultMessage: 'Combine phase and angle regulation' }, + 'ucte.export.combine-phase-angle-regulation.desc': { defaultMessage: 'Combine phase and angle regulation' }, + 'iidm.export.xml.indent': { defaultMessage: 'Indent' }, + 'iidm.export.xml.indent.desc': { defaultMessage: 'Indent export output file' }, + 'iidm.export.xml.with-branch-state-variables': { defaultMessage: 'With branch state variable' }, + 'iidm.export.xml.with-branch-state-variables.desc': { + defaultMessage: 'Export network with branch state variables', + }, + 'iidm.export.xml.only-main-cc': { defaultMessage: 'Only main CC' }, + 'iidm.export.xml.only-main-cc.desc': { defaultMessage: 'Export only main CC' }, + 'iidm.export.xml.anonymised': { defaultMessage: 'Anonymise exported network' }, + 'iidm.export.xml.anonymised.desc': { defaultMessage: 'Anonymise exported network' }, + 'iidm.export.xml.iidm-version-incompatibility-behavior': { + defaultMessage: 'Behavior when there is an IIDM version incompatibility', + }, + 'iidm.export.xml.iidm-version-incompatibility-behavior.desc': { + defaultMessage: 'Behavior when there is an IIDM version incompatibility', + }, + 'iidm.export.xml.iidm-version-incompatibility-behavior.THROW_EXCEPTION': { defaultMessage: 'Throw exception' }, + 'iidm.export.xml.iidm-version-incompatibility-behavior.LOG_ERROR': { defaultMessage: 'Log error' }, + 'iidm.export.xml.topology-level': { defaultMessage: 'Topology Level' }, + 'iidm.export.xml.topology-level.desc': { defaultMessage: 'Export network in this topology level' }, + 'iidm.export.xml.topology-level.BUS_BRANCH': { defaultMessage: 'BUS_BRANCH' }, + 'iidm.export.xml.topology-level.BUS_BREAKER': { defaultMessage: 'BUS_BREAKER' }, + 'iidm.export.xml.topology-level.NODE_BREAKER': { defaultMessage: 'NODE_BREAKER' }, + 'iidm.export.xml.throw-exception-if-extension-not-found': { + defaultMessage: 'Throw exception if extension not found', + }, + 'iidm.export.xml.throw-exception-if-extension-not-found.desc': { + defaultMessage: 'Throw exception if extension not found', + }, + 'iidm.export.xml.extensions': { defaultMessage: 'Extensions' }, + 'iidm.export.xml.extensions.selectionDialog.name': { defaultMessage: 'Extensions selection' }, + 'iidm.export.xml.extensions.desc': { defaultMessage: 'The list of exported extensions' }, + 'iidm.export.xml.extensions.activePowerControl': { defaultMessage: 'Active power control' }, + 'iidm.export.xml.extensions.baseVoltageMapping': { defaultMessage: 'Base voltage mapping' }, + 'iidm.export.xml.extensions.branchObservability': { defaultMessage: 'Branch observability' }, + 'iidm.export.xml.extensions.busbarSectionPosition': { defaultMessage: 'Busbar section position' }, + 'iidm.export.xml.extensions.branchStatus': { defaultMessage: 'Branch status (IIDM version < 1.12)' }, + 'iidm.export.xml.extensions.cgmesControlAreas': { defaultMessage: 'Cgmes control areas' }, + 'iidm.export.xml.extensions.cgmesDanglingLineBoundaryNode': { defaultMessage: 'Cgmes dangling line boundary node' }, + 'iidm.export.xml.extensions.cgmesLineBoundaryNode': { defaultMessage: 'Cgmes line boundary node' }, + 'iidm.export.xml.extensions.cgmesMetadataModels': { defaultMessage: 'Cgmes models metadata' }, + 'iidm.export.xml.extensions.cgmesSshMetadata': { defaultMessage: 'Cgmes ssh metadata' }, + 'iidm.export.xml.extensions.cgmesSvMetadata': { defaultMessage: 'Cgmes sv metadata' }, + 'iidm.export.xml.extensions.cgmesTapChangers': { defaultMessage: 'Cgmes tap changers' }, + 'iidm.export.xml.extensions.cimCharacteristics': { defaultMessage: 'Cgmes characteristics' }, + 'iidm.export.xml.extensions.coordinatedReactiveControl': { defaultMessage: 'Coordinated reactive control' }, + 'iidm.export.xml.extensions.detail': { defaultMessage: 'Load detail' }, + 'iidm.export.xml.extensions.discreteMeasurements': { defaultMessage: 'Discrete measurements' }, + 'iidm.export.xml.extensions.entsoeArea': { defaultMessage: 'Entsoe area' }, + 'iidm.export.xml.extensions.entsoeCategory': { defaultMessage: 'Entsoe category' }, + 'iidm.export.xml.extensions.generatorActivePowerControl': { defaultMessage: 'Generator active power control' }, + 'iidm.export.xml.extensions.generatorFortescue': { defaultMessage: 'Generator asymmetrical' }, + 'iidm.export.xml.extensions.generatorAsymmetrical': { defaultMessage: 'Generator asymmetrical' }, + 'iidm.export.xml.extensions.generatorRemoteReactivePowerControl': { + defaultMessage: 'Generator remote reactive power control', + }, + 'iidm.export.xml.extensions.generatorShortCircuit': { defaultMessage: 'Generator short-circuit' }, + 'iidm.export.xml.extensions.generatorShortCircuits': { + defaultMessage: 'Generator short-circuit (IIDM version 1.0)', + }, + 'iidm.export.xml.extensions.hvdcAngleDroopActivePowerControl': { + defaultMessage: 'HVDC angle droop active power control', + }, + 'iidm.export.xml.extensions.hvdcOperatorActivePowerRange': { defaultMessage: 'HVDC operator active power range' }, + 'iidm.export.xml.extensions.identifiableShortCircuit': { defaultMessage: 'Identifiable short-circuit' }, + 'iidm.export.xml.extensions.injectionObservability': { defaultMessage: 'Injection observability' }, + 'iidm.export.xml.extensions.lineFortescue': { defaultMessage: 'Line asymmetrical' }, + 'iidm.export.xml.extensions.lineAsymmetrical': { defaultMessage: 'Line asymmetrical' }, + 'iidm.export.xml.extensions.linePosition': { defaultMessage: 'Line position' }, + 'iidm.export.xml.extensions.loadFortescue': { defaultMessage: 'Load asymmetrical' }, + 'iidm.export.xml.extensions.loadAsymmetrical': { defaultMessage: 'Load asymmetrical' }, + 'iidm.export.xml.extensions.measurements': { defaultMessage: 'Measurements' }, + 'iidm.export.xml.extensions.mergedXnode': { defaultMessage: 'Merged Xnode' }, + 'iidm.export.xml.extensions.operatingStatus': { defaultMessage: 'Operating status' }, + 'iidm.export.xml.extensions.position': { defaultMessage: 'Connectable position' }, + 'iidm.export.xml.extensions.referencePriorities': { defaultMessage: 'Reference priorities (LoadFlow)' }, + 'iidm.export.xml.extensions.referenceTerminals': { defaultMessage: 'Reference terminals (LoadFlow)' }, + 'iidm.export.xml.extensions.secondaryVoltageControl': { defaultMessage: 'Secondary voltage control' }, + 'iidm.export.xml.extensions.slackTerminal': { defaultMessage: 'Slack terminal' }, + 'iidm.export.xml.extensions.standbyAutomaton': { defaultMessage: 'Static var compensators automaton' }, + 'iidm.export.xml.extensions.startup': { defaultMessage: 'Generator startup' }, + 'iidm.export.xml.extensions.substationPosition': { defaultMessage: 'Substation position' }, + 'iidm.export.xml.extensions.threeWindingsTransformerFortescue': { + defaultMessage: 'Three windings transformer asymmetrical', + }, + 'iidm.export.xml.extensions.threeWindingsTransformerAsymmetrical': { + defaultMessage: 'Three windings transformer asymmetrical', + }, + 'iidm.export.xml.extensions.threeWindingsTransformerPhaseAngleClock': { + defaultMessage: 'Three windings transformer phase angle clock', + }, + 'iidm.export.xml.extensions.threeWindingsTransformerToBeEstimated': { + defaultMessage: 'Three windings transformer to be estimated', + }, + 'iidm.export.xml.extensions.twoWindingsTransformerFortescue': { + defaultMessage: 'Two windings transformer asymmetrical', + }, + 'iidm.export.xml.extensions.twoWindingsTransformerAsymmetrical': { + defaultMessage: 'Two windings transformer asymmetrical', + }, + 'iidm.export.xml.extensions.twoWindingsTransformerPhaseAngleClock': { + defaultMessage: 'Two windings transformer phase angle clock', + }, + 'iidm.export.xml.extensions.twoWindingsTransformerToBeEstimated': { + defaultMessage: 'Two windings transformer to be estimated', + }, + 'iidm.export.xml.extensions.voltageLevelShortCircuits': { defaultMessage: 'Voltage level short circuits' }, + 'iidm.export.xml.extensions.voltagePerReactivePowerControl': { + defaultMessage: 'Voltage per reactive power control', + }, + 'iidm.export.xml.extensions.voltageRegulation': { defaultMessage: 'Voltage regulation' }, + 'iidm.export.xml.sorted': { defaultMessage: 'Sort export output file' }, + 'iidm.export.xml.sorted.desc': { defaultMessage: 'Sort export output file' }, + 'iidm.export.xml.version': { defaultMessage: 'IIDM Version' }, + 'iidm.export.xml.version.desc': { defaultMessage: 'IIDM-XML version in which files will be generated' }, + 'iidm.export.xml.version.1.0': { defaultMessage: '1.0' }, + 'iidm.export.xml.version.1.1': { defaultMessage: '1.1' }, + 'iidm.export.xml.version.1.2': { defaultMessage: '1.2' }, + 'iidm.export.xml.version.1.3': { defaultMessage: '1.3' }, + 'iidm.export.xml.version.1.4': { defaultMessage: '1.4' }, + 'iidm.export.xml.version.1.5': { defaultMessage: '1.5' }, + 'iidm.export.xml.version.1.6': { defaultMessage: '1.6' }, + 'iidm.export.xml.version.1.7': { defaultMessage: '1.7' }, + 'iidm.export.xml.version.1.8': { defaultMessage: '1.8' }, + 'iidm.export.xml.version.1.9': { defaultMessage: '1.9' }, + 'iidm.export.xml.version.1.10': { defaultMessage: '1.10' }, +}); diff --git a/src/translations/en/external/importParamsEn.ts b/src/translations/en/external/importParamsEn.ts index dfa1fa1dc..4887029e3 100644 --- a/src/translations/en/external/importParamsEn.ts +++ b/src/translations/en/external/importParamsEn.ts @@ -4,131 +4,182 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -export const importParamsEn = { - 'iidm.import.cgmes.allow-unsupported-tap-changers': 'Allow unsupported tap changers', - 'iidm.import.cgmes.allow-unsupported-tap-changers.desc': 'Allow import of potentially unsupported tap changers', - 'iidm.import.cgmes.change-sign-for-shunt-reactive-power-flow-initial-state': - 'Change sign for shunt power flow in initial state', - 'iidm.import.cgmes.change-sign-for-shunt-reactive-power-flow-initial-state.desc': - 'Change the sign of the power flow for shunt in initial state', - 'iidm.import.cgmes.convert-boundary': 'Convert boundary', - 'iidm.import.cgmes.convert-boundary.desc': 'Convert boundary during import', - 'iidm.import.cgmes.convert-sv-injections': 'Convert SV injections', - 'iidm.import.cgmes.convert-sv-injections.desc': 'Convert SV injections during import', - 'iidm.import.cgmes.create-busbar-section-for-every-connectivity-node': - 'Create busbar section for every connectivity node', - 'iidm.import.cgmes.create-busbar-section-for-every-connectivity-node.desc': - 'Create busbar section for every connectivity node', - 'iidm.import.cgmes.ensure-id-alias-unicity': 'Ensure IDs and aliases unicity ', - 'iidm.import.cgmes.ensure-id-alias-unicity.desc': 'Ensure IDs and aliases are unique', - 'iidm.import.cgmes.naming-strategy': 'Naming strategy', - 'iidm.import.cgmes.naming-strategy.desc': - 'Configure what type of naming strategy you want to use for the provided ID mapping file', - 'iidm.import.cgmes.naming-strategy.identity': 'identity', - 'iidm.import.cgmes.naming-strategy.cgmes': 'cgmes', - 'iidm.import.cgmes.naming-strategy.cgmes-fix-all-invalid-id': 'cgmes-fix-all-invalid-id', - 'iidm.import.cgmes.import-control-areas': 'Import control areas', - 'iidm.import.cgmes.import-control-areas.desc': 'Import control areas', - 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions': - 'Profile used for initial state values of shunt sections and tap position', - 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.desc': - 'Profile used for initial state values of shunt sections and tap position', - 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.SV': 'SV', - 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.SSH': 'SSH', - 'iidm.import.cgmes.source-for-iidm-id': 'Source for IIDM identifiers', - 'iidm.import.cgmes.source-for-iidm-id.desc': 'Source for IIDM identifiers', - 'iidm.import.cgmes.source-for-iidm-id.mRID': 'mrID', - 'iidm.import.cgmes.source-for-iidm-id.rdfID': 'rdfID', - 'iidm.import.cgmes.store-cgmes-model-as-network-extension': 'Store cgmes model as network extension', - 'iidm.import.cgmes.store-cgmes-model-as-network-extension.desc': - 'Store the initial CGMES model as a network extension', - 'iidm.import.cgmes.store-cgmes-conversion-context-as-network-extension': - 'Store cgmes conversion context as network extension', - 'iidm.import.cgmes.store-cgmes-conversion-context-as-network-extension.desc': - 'Store the CGMES-IIDM terminal mapping as a network extension', - 'iidm.import.cgmes.create-active-power-control-extension': 'Create active power control extension', - 'iidm.import.cgmes.create-active-power-control-extension.desc': - 'Create active power control extension during import', - 'iidm.import.cgmes.decode-escaped-identifiers': 'Decode escaped identifiers', - 'iidm.import.cgmes.decode-escaped-identifiers.desc': 'Decode escaped special characters in IDs', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode': - 'Create fictitious switches for disconnected terminals mode', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.desc': - 'Defines in which case fictitious switches for disconnected terminals are created (relevant for node-breaker models only): always, always except for switches or never', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.ALWAYS': 'Always', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.ALWAYS_EXCEPT_SWITCHES': - 'Always except switches', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.NEVER': 'Never', - 'iidm.import.cgmes.post-processors': 'Post processors', - 'iidm.import.cgmes.post-processors.desc': 'Post processors', - 'iidm.import.cgmes.post-processors.EntsoeCategory': 'EntsoeCategory', - 'iidm.import.cgmes.post-processors.PhaseAngleClock': 'PhaseAngleClock', - 'ucte.import.combine-phase-angle-regulation': 'Combine phase and angle regulation', - 'ucte.import.combine-phase-angle-regulation.desc': 'Combine phase and angle regulation', + +import { defineMessages } from '../../utils'; + +export const importParamsEn = defineMessages({ + 'iidm.import.cgmes.allow-unsupported-tap-changers': { defaultMessage: 'Allow unsupported tap changers' }, + 'iidm.import.cgmes.allow-unsupported-tap-changers.desc': { + defaultMessage: 'Allow import of potentially unsupported tap changers', + }, + 'iidm.import.cgmes.change-sign-for-shunt-reactive-power-flow-initial-state': { + defaultMessage: 'Change sign for shunt power flow in initial state', + }, + 'iidm.import.cgmes.change-sign-for-shunt-reactive-power-flow-initial-state.desc': { + defaultMessage: 'Change the sign of the power flow for shunt in initial state', + }, + 'iidm.import.cgmes.convert-boundary': { defaultMessage: 'Convert boundary' }, + 'iidm.import.cgmes.convert-boundary.desc': { defaultMessage: 'Convert boundary during import' }, + 'iidm.import.cgmes.convert-sv-injections': { defaultMessage: 'Convert SV injections' }, + 'iidm.import.cgmes.convert-sv-injections.desc': { defaultMessage: 'Convert SV injections during import' }, + 'iidm.import.cgmes.create-busbar-section-for-every-connectivity-node': { + defaultMessage: 'Create busbar section for every connectivity node', + }, + 'iidm.import.cgmes.create-busbar-section-for-every-connectivity-node.desc': { + defaultMessage: 'Create busbar section for every connectivity node', + }, + 'iidm.import.cgmes.ensure-id-alias-unicity': { defaultMessage: 'Ensure IDs and aliases unicity ' }, + 'iidm.import.cgmes.ensure-id-alias-unicity.desc': { defaultMessage: 'Ensure IDs and aliases are unique' }, + 'iidm.import.cgmes.naming-strategy': { defaultMessage: 'Naming strategy' }, + 'iidm.import.cgmes.naming-strategy.desc': { + defaultMessage: 'Configure what type of naming strategy you want to use for the provided ID mapping file', + }, + 'iidm.import.cgmes.naming-strategy.identity': { defaultMessage: 'identity' }, + 'iidm.import.cgmes.naming-strategy.cgmes': { defaultMessage: 'cgmes' }, + 'iidm.import.cgmes.naming-strategy.cgmes-fix-all-invalid-id': { defaultMessage: 'cgmes-fix-all-invalid-id' }, + 'iidm.import.cgmes.import-control-areas': { defaultMessage: 'Import control areas' }, + 'iidm.import.cgmes.import-control-areas.desc': { defaultMessage: 'Import control areas' }, + 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions': { + defaultMessage: 'Profile used for initial state values of shunt sections and tap position', + }, + 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.desc': { + defaultMessage: 'Profile used for initial state values of shunt sections and tap position', + }, + 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.SV': { defaultMessage: 'SV' }, + 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.SSH': { defaultMessage: 'SSH' }, + 'iidm.import.cgmes.source-for-iidm-id': { defaultMessage: 'Source for IIDM identifiers' }, + 'iidm.import.cgmes.source-for-iidm-id.desc': { defaultMessage: 'Source for IIDM identifiers' }, + 'iidm.import.cgmes.source-for-iidm-id.mRID': { defaultMessage: 'mrID' }, + 'iidm.import.cgmes.source-for-iidm-id.rdfID': { defaultMessage: 'rdfID' }, + 'iidm.import.cgmes.store-cgmes-model-as-network-extension': { + defaultMessage: 'Store cgmes model as network extension', + }, + 'iidm.import.cgmes.store-cgmes-model-as-network-extension.desc': { + defaultMessage: 'Store the initial CGMES model as a network extension', + }, + 'iidm.import.cgmes.store-cgmes-conversion-context-as-network-extension': { + defaultMessage: 'Store cgmes conversion context as network extension', + }, + 'iidm.import.cgmes.store-cgmes-conversion-context-as-network-extension.desc': { + defaultMessage: 'Store the CGMES-IIDM terminal mapping as a network extension', + }, + 'iidm.import.cgmes.create-active-power-control-extension': { + defaultMessage: 'Create active power control extension', + }, + 'iidm.import.cgmes.create-active-power-control-extension.desc': { + defaultMessage: 'Create active power control extension during import', + }, + 'iidm.import.cgmes.decode-escaped-identifiers': { defaultMessage: 'Decode escaped identifiers' }, + 'iidm.import.cgmes.decode-escaped-identifiers.desc': { defaultMessage: 'Decode escaped special characters in IDs' }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode': { + defaultMessage: 'Create fictitious switches for disconnected terminals mode', + }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.desc': { + defaultMessage: + 'Defines in which case fictitious switches for disconnected terminals are created (relevant for node-breaker models only): always, always except for switches or never', + }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.ALWAYS': { defaultMessage: 'Always' }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.ALWAYS_EXCEPT_SWITCHES': { + defaultMessage: 'Always except switches', + }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.NEVER': { defaultMessage: 'Never' }, + 'iidm.import.cgmes.post-processors': { defaultMessage: 'Post processors' }, + 'iidm.import.cgmes.post-processors.desc': { defaultMessage: 'Post processors' }, + 'iidm.import.cgmes.post-processors.EntsoeCategory': { defaultMessage: 'EntsoeCategory' }, + 'iidm.import.cgmes.post-processors.PhaseAngleClock': { defaultMessage: 'PhaseAngleClock' }, + 'ucte.import.combine-phase-angle-regulation': { defaultMessage: 'Combine phase and angle regulation' }, + 'ucte.import.combine-phase-angle-regulation.desc': { defaultMessage: 'Combine phase and angle regulation' }, // IIDM - 'iidm.import.xml.throw-exception-if-extension-not-found': 'Throw exception if extension not found', - 'iidm.import.xml.throw-exception-if-extension-not-found.desc': 'Throw exception if extension not found', - 'iidm.import.xml.extensions': 'Extensions', - 'iidm.import.xml.extensions.selectionDialog.name': 'Extensions selection', - 'iidm.import.xml.extensions.desc': 'Import with these extensions', - 'iidm.import.xml.extensions.activePowerControl': 'Active power control', - 'iidm.import.xml.extensions.baseVoltageMapping': 'Base voltage mapping', - 'iidm.import.xml.extensions.branchObservability': 'Branch observability', - 'iidm.import.xml.extensions.busbarSectionPosition': 'Busbar section position', - 'iidm.import.xml.extensions.branchStatus': 'Branch status (IIDM version < 1.12)', - 'iidm.import.xml.extensions.cgmesControlAreas': 'Cgmes control areas', - 'iidm.import.xml.extensions.cgmesDanglingLineBoundaryNode': 'Cgmes dangling line boundary node', - 'iidm.import.xml.extensions.cgmesLineBoundaryNode': 'Cgmes line boundary node', - 'iidm.import.xml.extensions.cgmesMetadataModels': 'Cgmes models metadata', - 'iidm.import.xml.extensions.cgmesSshMetadata': 'Cgmes ssh metadata', - 'iidm.import.xml.extensions.cgmesSvMetadata': 'Cgmes sv metadata', - 'iidm.import.xml.extensions.cgmesTapChangers': 'Cgmes tap changers', - 'iidm.import.xml.extensions.cimCharacteristics': 'Cgmes characteristics', - 'iidm.import.xml.extensions.coordinatedReactiveControl': 'Coordinated reactive control', - 'iidm.import.xml.extensions.detail': 'Load detail', - 'iidm.import.xml.extensions.discreteMeasurements': 'Discrete measurements', - 'iidm.import.xml.extensions.entsoeArea': 'Entsoe area', - 'iidm.import.xml.extensions.entsoeCategory': 'Entsoe category', - 'iidm.import.xml.extensions.generatorActivePowerControl': 'Generator active power control', - 'iidm.import.xml.extensions.generatorAsymmetrical': 'Generator asymmetrical', - 'iidm.import.xml.extensions.generatorRemoteReactivePowerControl': 'Generator remote reactive power control', - 'iidm.import.xml.extensions.generatorShortCircuit': 'Generator short-circuit', - 'iidm.import.xml.extensions.generatorShortCircuits': 'Generator short-circuit (IIDM version 1.0)', - 'iidm.import.xml.extensions.hvdcAngleDroopActivePowerControl': 'HVDC angle droop active power control', - 'iidm.import.xml.extensions.hvdcOperatorActivePowerRange': 'HVDC operator active power range', - 'iidm.import.xml.extensions.identifiableShortCircuit': 'Identifiable short-circuit', - 'iidm.import.xml.extensions.injectionObservability': 'Injection observability', - 'iidm.import.xml.extensions.lineAsymmetrical': 'Line asymmetrical', - 'iidm.import.xml.extensions.linePosition': 'Line position', - 'iidm.import.xml.extensions.loadAsymmetrical': 'Load asymmetrical', - 'iidm.import.xml.extensions.measurements': 'Measurements', - 'iidm.import.xml.extensions.mergedXnode': 'Merged Xnode', - 'iidm.import.xml.extensions.operatingStatus': 'Operating status', - 'iidm.import.xml.extensions.position': 'Connectable position', - 'iidm.import.xml.extensions.referencePriorities': 'Reference priorities (LoadFlow)', - 'iidm.import.xml.extensions.referenceTerminals': 'Reference terminals (LoadFlow)', - 'iidm.import.xml.extensions.secondaryVoltageControl': 'Secondary voltage control', - 'iidm.import.xml.extensions.slackTerminal': 'Slack terminal', - 'iidm.import.xml.extensions.standbyAutomaton': 'Static var compensators automaton', - 'iidm.import.xml.extensions.startup': 'Generator startup', - 'iidm.import.xml.extensions.substationPosition': 'Substation position', - 'iidm.import.xml.extensions.threeWindingsTransformerAsymmetrical': 'Three windings transformer asymmetrical', - 'iidm.import.xml.extensions.threeWindingsTransformerPhaseAngleClock': - 'Three windings transformer phase angle clock', - 'iidm.import.xml.extensions.threeWindingsTransformerToBeEstimated': 'Three windings transformer to be estimated', - 'iidm.import.xml.extensions.twoWindingsTransformerAsymmetrical': 'Two windings transformer asymmetrical', - 'iidm.import.xml.extensions.twoWindingsTransformerPhaseAngleClock': 'Two windings transformer phase angle clock', - 'iidm.import.xml.extensions.twoWindingsTransformerToBeEstimated': 'Two windings transformer to be estimated', - 'iidm.import.xml.extensions.voltageLevelShortCircuits': 'Voltage level short circuits', - 'iidm.import.xml.extensions.voltagePerReactivePowerControl': 'Voltage per reactive power control', - 'iidm.import.xml.extensions.voltageRegulation': 'Voltage regulation', - 'iidm.import.xml.extensions.xnode': 'Xnode', + 'iidm.import.xml.throw-exception-if-extension-not-found': { + defaultMessage: 'Throw exception if extension not found', + }, + 'iidm.import.xml.throw-exception-if-extension-not-found.desc': { + defaultMessage: 'Throw exception if extension not found', + }, + 'iidm.import.xml.extensions': { defaultMessage: 'Extensions' }, + 'iidm.import.xml.extensions.selectionDialog.name': { defaultMessage: 'Extensions selection' }, + 'iidm.import.xml.extensions.desc': { defaultMessage: 'Import with these extensions' }, + 'iidm.import.xml.extensions.activePowerControl': { defaultMessage: 'Active power control' }, + 'iidm.import.xml.extensions.baseVoltageMapping': { defaultMessage: 'Base voltage mapping' }, + 'iidm.import.xml.extensions.branchObservability': { defaultMessage: 'Branch observability' }, + 'iidm.import.xml.extensions.busbarSectionPosition': { defaultMessage: 'Busbar section position' }, + 'iidm.import.xml.extensions.branchStatus': { defaultMessage: 'Branch status (IIDM version < 1.12)' }, + 'iidm.import.xml.extensions.cgmesControlAreas': { defaultMessage: 'Cgmes control areas' }, + 'iidm.import.xml.extensions.cgmesDanglingLineBoundaryNode': { defaultMessage: 'Cgmes dangling line boundary node' }, + 'iidm.import.xml.extensions.cgmesLineBoundaryNode': { defaultMessage: 'Cgmes line boundary node' }, + 'iidm.import.xml.extensions.cgmesMetadataModels': { defaultMessage: 'Cgmes models metadata' }, + 'iidm.import.xml.extensions.cgmesSshMetadata': { defaultMessage: 'Cgmes ssh metadata' }, + 'iidm.import.xml.extensions.cgmesSvMetadata': { defaultMessage: 'Cgmes sv metadata' }, + 'iidm.import.xml.extensions.cgmesTapChangers': { defaultMessage: 'Cgmes tap changers' }, + 'iidm.import.xml.extensions.cimCharacteristics': { defaultMessage: 'Cgmes characteristics' }, + 'iidm.import.xml.extensions.coordinatedReactiveControl': { defaultMessage: 'Coordinated reactive control' }, + 'iidm.import.xml.extensions.detail': { defaultMessage: 'Load detail' }, + 'iidm.import.xml.extensions.discreteMeasurements': { defaultMessage: 'Discrete measurements' }, + 'iidm.import.xml.extensions.entsoeArea': { defaultMessage: 'Entsoe area' }, + 'iidm.import.xml.extensions.entsoeCategory': { defaultMessage: 'Entsoe category' }, + 'iidm.import.xml.extensions.generatorActivePowerControl': { defaultMessage: 'Generator active power control' }, + 'iidm.import.xml.extensions.generatorAsymmetrical': { defaultMessage: 'Generator asymmetrical' }, + 'iidm.import.xml.extensions.generatorRemoteReactivePowerControl': { + defaultMessage: 'Generator remote reactive power control', + }, + 'iidm.import.xml.extensions.generatorShortCircuit': { defaultMessage: 'Generator short-circuit' }, + 'iidm.import.xml.extensions.generatorShortCircuits': { + defaultMessage: 'Generator short-circuit (IIDM version 1.0)', + }, + 'iidm.import.xml.extensions.hvdcAngleDroopActivePowerControl': { + defaultMessage: 'HVDC angle droop active power control', + }, + 'iidm.import.xml.extensions.hvdcOperatorActivePowerRange': { defaultMessage: 'HVDC operator active power range' }, + 'iidm.import.xml.extensions.identifiableShortCircuit': { defaultMessage: 'Identifiable short-circuit' }, + 'iidm.import.xml.extensions.injectionObservability': { defaultMessage: 'Injection observability' }, + 'iidm.import.xml.extensions.lineAsymmetrical': { defaultMessage: 'Line asymmetrical' }, + 'iidm.import.xml.extensions.linePosition': { defaultMessage: 'Line position' }, + 'iidm.import.xml.extensions.loadAsymmetrical': { defaultMessage: 'Load asymmetrical' }, + 'iidm.import.xml.extensions.measurements': { defaultMessage: 'Measurements' }, + 'iidm.import.xml.extensions.mergedXnode': { defaultMessage: 'Merged Xnode' }, + 'iidm.import.xml.extensions.operatingStatus': { defaultMessage: 'Operating status' }, + 'iidm.import.xml.extensions.position': { defaultMessage: 'Connectable position' }, + 'iidm.import.xml.extensions.referencePriorities': { defaultMessage: 'Reference priorities (LoadFlow)' }, + 'iidm.import.xml.extensions.referenceTerminals': { defaultMessage: 'Reference terminals (LoadFlow)' }, + 'iidm.import.xml.extensions.secondaryVoltageControl': { defaultMessage: 'Secondary voltage control' }, + 'iidm.import.xml.extensions.slackTerminal': { defaultMessage: 'Slack terminal' }, + 'iidm.import.xml.extensions.standbyAutomaton': { defaultMessage: 'Static var compensators automaton' }, + 'iidm.import.xml.extensions.startup': { defaultMessage: 'Generator startup' }, + 'iidm.import.xml.extensions.substationPosition': { defaultMessage: 'Substation position' }, + 'iidm.import.xml.extensions.threeWindingsTransformerAsymmetrical': { + defaultMessage: 'Three windings transformer asymmetrical', + }, + 'iidm.import.xml.extensions.threeWindingsTransformerPhaseAngleClock': { + defaultMessage: 'Three windings transformer phase angle clock', + }, + 'iidm.import.xml.extensions.threeWindingsTransformerToBeEstimated': { + defaultMessage: 'Three windings transformer to be estimated', + }, + 'iidm.import.xml.extensions.twoWindingsTransformerAsymmetrical': { + defaultMessage: 'Two windings transformer asymmetrical', + }, + 'iidm.import.xml.extensions.twoWindingsTransformerPhaseAngleClock': { + defaultMessage: 'Two windings transformer phase angle clock', + }, + 'iidm.import.xml.extensions.twoWindingsTransformerToBeEstimated': { + defaultMessage: 'Two windings transformer to be estimated', + }, + 'iidm.import.xml.extensions.voltageLevelShortCircuits': { defaultMessage: 'Voltage level short circuits' }, + 'iidm.import.xml.extensions.voltagePerReactivePowerControl': { + defaultMessage: 'Voltage per reactive power control', + }, + 'iidm.import.xml.extensions.voltageRegulation': { defaultMessage: 'Voltage regulation' }, + 'iidm.import.xml.extensions.xnode': { defaultMessage: 'Xnode' }, // to remove after powsybl september release - 'iidm.import.xml.extensions.generatorFortescue': 'Generator asymmetrical', - 'iidm.import.xml.extensions.lineFortescue': 'Line asymmetrical', - 'iidm.import.xml.extensions.loadFortescue': 'Load asymmetrical', - 'iidm.import.xml.extensions.threeWindingsTransformerFortescue': 'Three windings transformer asymmetrical', - 'iidm.import.xml.extensions.twoWindingsTransformerFortescue': 'Two windings transformer asymmetrical', + 'iidm.import.xml.extensions.generatorFortescue': { defaultMessage: 'Generator asymmetrical' }, + 'iidm.import.xml.extensions.lineFortescue': { defaultMessage: 'Line asymmetrical' }, + 'iidm.import.xml.extensions.loadFortescue': { defaultMessage: 'Load asymmetrical' }, + 'iidm.import.xml.extensions.threeWindingsTransformerFortescue': { + defaultMessage: 'Three windings transformer asymmetrical', + }, + 'iidm.import.xml.extensions.twoWindingsTransformerFortescue': { + defaultMessage: 'Two windings transformer asymmetrical', + }, // end to remove -}; +}); diff --git a/src/translations/en/filterEn.ts b/src/translations/en/filterEn.ts index 58b65f6b2..1ac1a90d8 100644 --- a/src/translations/en/filterEn.ts +++ b/src/translations/en/filterEn.ts @@ -4,55 +4,64 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const filterEn = { - OR: 'OR', - AND: 'AND', - rule: 'criterion', - subGroup: 'subgroup', - is: 'is', - contains: 'contains', - beginsWith: 'begins with', - endsWith: 'ends with', - exists: 'exists', - not_exists: 'not exists', - between: 'between', - in: 'is in', - notIn: 'is not in', - inFilter: 'in filter', - notInFilter: 'not in filter', - emptyRule: 'Filter contains an empty field', - incorrectRule: 'Filter contains an incorrect field', - obsoleteFilter: 'This filter is no longer supported. Please remove it or change its equipment type.', - betweenRule: "Left value of 'between' criterion has to be lower than the right value", - emptyGroup: 'Filter contains an empty group. Consider removing it or adding criteria to this group', - Hvdc: 'HVDC', - 'filter.expert': 'Criteria based', - 'filter.explicitNaming': 'Explicit naming', - nameEmpty: 'The name is empty', - equipmentType: 'Equipment type', - changeTypeMessage: 'The equipment type will be changed and the current configuration will be erased.', - PropertyValues: 'Property values', - PropertyValues1: 'Property values 1', - PropertyValues2: 'Property values 2', - FreePropsCrit: 'By properties filtering', - AddFreePropCrit: 'Add a filtering by property', - FreeProps: 'Equipment properties', - SubstationFreeProps: 'Equipment substation properties', - YupRequired: 'This field is required', - filterPropertiesNameUniquenessError: 'It is not possible to add multiple filters for the same property', - emptyFilterError: 'Filter should contain at least one equipment', - distributionKeyWithMissingIdError: 'Missing ID with defined distribution key', - missingDistributionKeyError: 'Missing distribution key', - filterCsvFileName: 'filterCreation', - createNewFilter: 'Create a filter', - nameProperty: 'Name', - Countries: 'Countries', - Countries1: 'Countries 1', - Countries2: 'Countries 2', - nominalVoltage: 'Nominal voltage', - EnergySourceText: 'Energy source', - nameAlreadyUsed: 'This name is already used', - nameValidityCheckErrorMsg: 'Error while checking name validity', - cantSubmitWhileValidating: 'Impossible to submit the form while validating a field', -}; +export const filterEn = defineMessages({ + OR: { defaultMessage: 'OR' }, + AND: { defaultMessage: 'AND' }, + rule: { defaultMessage: 'criterion' }, + subGroup: { defaultMessage: 'subgroup' }, + is: { defaultMessage: 'is' }, + contains: { defaultMessage: 'contains' }, + beginsWith: { defaultMessage: 'begins with' }, + endsWith: { defaultMessage: 'ends with' }, + exists: { defaultMessage: 'exists' }, + not_exists: { defaultMessage: 'not exists' }, + between: { defaultMessage: 'between' }, + in: { defaultMessage: 'is in' }, + notIn: { defaultMessage: 'is not in' }, + inFilter: { defaultMessage: 'in filter' }, + notInFilter: { defaultMessage: 'not in filter' }, + emptyRule: { defaultMessage: 'Filter contains an empty field' }, + incorrectRule: { defaultMessage: 'Filter contains an incorrect field' }, + obsoleteFilter: { + defaultMessage: 'This filter is no longer supported. Please remove it or change its equipment type.', + }, + betweenRule: { defaultMessage: "Left value of 'between' criterion has to be lower than the right value" }, + emptyGroup: { + defaultMessage: 'Filter contains an empty group. Consider removing it or adding criteria to this group', + }, + Hvdc: { defaultMessage: 'HVDC' }, + 'filter.expert': { defaultMessage: 'Criteria based' }, + 'filter.explicitNaming': { defaultMessage: 'Explicit naming' }, + nameEmpty: { defaultMessage: 'The name is empty' }, + equipmentType: { defaultMessage: 'Equipment type' }, + changeTypeMessage: { + defaultMessage: 'The equipment type will be changed and the current configuration will be erased.', + }, + PropertyValues: { defaultMessage: 'Property values' }, + PropertyValues1: { defaultMessage: 'Property values 1' }, + PropertyValues2: { defaultMessage: 'Property values 2' }, + FreePropsCrit: { defaultMessage: 'By properties filtering' }, + AddFreePropCrit: { defaultMessage: 'Add a filtering by property' }, + FreeProps: { defaultMessage: 'Equipment properties' }, + SubstationFreeProps: { defaultMessage: 'Equipment substation properties' }, + YupRequired: { defaultMessage: 'This field is required' }, + filterPropertiesNameUniquenessError: { + defaultMessage: 'It is not possible to add multiple filters for the same property', + }, + emptyFilterError: { defaultMessage: 'Filter should contain at least one equipment' }, + distributionKeyWithMissingIdError: { defaultMessage: 'Missing ID with defined distribution key' }, + missingDistributionKeyError: { defaultMessage: 'Missing distribution key' }, + filterCsvFileName: { defaultMessage: 'filterCreation' }, + createNewFilter: { defaultMessage: 'Create a filter' }, + nameProperty: { defaultMessage: 'Name' }, + Countries: { defaultMessage: 'Countries' }, + Countries1: { defaultMessage: 'Countries 1' }, + Countries2: { defaultMessage: 'Countries 2' }, + nominalVoltage: { defaultMessage: 'Nominal voltage' }, + EnergySourceText: { defaultMessage: 'Energy source' }, + nameAlreadyUsed: { defaultMessage: 'This name is already used' }, + nameValidityCheckErrorMsg: { defaultMessage: 'Error while checking name validity' }, + cantSubmitWhileValidating: { defaultMessage: 'Impossible to submit the form while validating a field' }, +}); diff --git a/src/translations/en/filterExpertEn.ts b/src/translations/en/filterExpertEn.ts index f7465e615..1d5987210 100644 --- a/src/translations/en/filterExpertEn.ts +++ b/src/translations/en/filterExpertEn.ts @@ -4,190 +4,193 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const filterExpertEn = { - id: 'ID', - name: 'Name', - energySource: 'Energy source', - country: 'Country', - voltageRegulatorOn: 'Voltage regulation', - PlannedActivePowerSetPoint: 'Planning active power set point', - minP: 'Minimum active power', - maxP: 'Maximum active power', - targetP: 'Active power target', - targetV: 'Voltage target', - targetQ: 'Reactive power target', - connected: 'Connected', - maximumSectionCount: 'Maximum number of sections', - sectionCount: 'Current number of sections', - shuntCompensatorType: 'Type', - Capacitor: 'Capacitor', - Reactor: 'Reactor', - maxQAtNominalV: 'Available Qmax at nominal voltage', - SwitchedOnMaxQAtNominalV: 'Switch-on Q at nominal voltage', - maxSusceptance: 'Maximum available susceptance', - SwitchedOnMaxSusceptance: 'Switch-on susceptance', - ratedS: 'Rated nominal power', - ratedS1: 'Rated nominal power side 1', - ratedS2: 'Rated nominal power side 2', - ratedS3: 'Rated nominal power side 3', - marginalCost: 'Cost', - plannedOutageRate: 'Planning outage rate', - forcedOutageRate: 'Forced outage rate', - vlId: 'Voltage level ID', - p0: 'Constant P', - q0: 'Constant Q', - loadTapChangingCapabilities: 'Ratio tap changer on-load', - loadTapChangingCapabilities1: 'Ratio tap changer 1 on-load', - loadTapChangingCapabilities2: 'Ratio tap changer 2 on-load', - loadTapChangingCapabilities3: 'Ratio tap changer 3 on-load', - ratioTargetV: 'Ratio tap changer voltage set point', - ratioTargetV1: 'Ratio tap changer 1 voltage set point', - ratioTargetV2: 'Ratio tap changer 2 voltage set point', - ratioTargetV3: 'Ratio tap changer 3 voltage set point', - magnetizingConductance: 'Magnetizing conductance', - magnetizingConductance1: 'Magnetizing conductance side 1', - magnetizingConductance2: 'Magnetizing conductance side 2', - magnetizingConductance3: 'Magnetizing conductance side 3', - magnetizingSusceptance: 'Magnetizing susceptance', - magnetizingSusceptance1: 'Magnetizing susceptance side 1', - magnetizingSusceptance2: 'Magnetizing susceptance side 2', - magnetizingSusceptance3: 'Magnetizing susceptance side 3', - vlNominalVoltage: 'Voltage level nominal voltage', - lowVoltageLimit: 'Low voltage limit', - highVoltageLimit: 'High voltage limit', - selectFilterDialogTitle: 'Choose a filter', - filter: 'Filter', - loadType: 'Type', - Undefined: 'Undefined', - Auxiliary: 'Auxiliary', - Fictitious: 'Fictitious', - hasRatioTapChanger: 'Ratio tap changer exists', - hasRatioTapChanger1: 'Ratio tap 1 changer exists', - hasRatioTapChanger2: 'Ratio tap 2 changer exists', - hasRatioTapChanger3: 'Ratio tap 3 changer exists', - hasPhaseTapChanger: 'Phase tap changer exists', - hasPhaseTapChanger1: 'Phase tap 1 changer exists', - hasPhaseTapChanger2: 'Phase tap 2 changer exists', - hasPhaseTapChanger3: 'Phase tap 3 changer exists', - Voltage: 'Voltage', - ReactivePower: 'Reactive power', - VoltageRegulation: 'Voltage regulation', - FixedRatio: 'Fixed ratio', - CurrentLimiter: 'Current limiter', - ActivePowerControl: 'Active power control', - FixedTap: 'Fixed tap', - ratioRegulationMode: 'Ratio tap changer regulation mode', - ratioRegulationMode1: 'Ratio tap 1 changer regulation mode', - ratioRegulationMode2: 'Ratio tap 2 changer regulation mode', - ratioRegulationMode3: 'Ratio tap 3 changer regulation mode', - phaseRegulationMode: 'Phase tap changer regulation mode', - phaseRegulationMode1: 'Phase tap 1 changer regulation mode', - phaseRegulationMode2: 'Phase tap 2 changer regulation mode', - phaseRegulationMode3: 'Phase tap 3 changer regulation mode', - phaseRegulationValue: 'Phase tap changer flow set point or current limit', - phaseRegulationValue1: 'Phase tap 1 changer flow set point or current limit', - phaseRegulationValue2: 'Phase tap 2 changer flow set point or current limit', - phaseRegulationValue3: 'Phase tap 3 changer flow set point or current limit', - property: 'Property', - substationProperty: 'Substation property', - substationProperty1: 'Substation property 1', - substationProperty2: 'Substation property 2', - substationProperty1Twt: 'Substation property 1', - substationProperty2Twt: 'Substation property 2', - ratedVoltage1KV: 'Rated Voltage 1', - ratedVoltage2KV: 'Rated Voltage 2', - ratedVoltage0KVTwt: 'Rated Voltage 0', - ratedVoltage1KVTwt: 'Rated Voltage 1', - ratedVoltage2KVTwt: 'Rated Voltage 2', - ratedVoltage3KVTwt: 'Rated Voltage 3', - nominalVoltage1: 'Nominal Voltage 1', - nominalVoltage2: 'Nominal Voltage 2', - nominalVoltage3: 'Nominal Voltage 3', - nominalVoltage1KV: 'Nominal Voltage 1', - nominalVoltage2KV: 'Nominal Voltage 2', - nominalVoltage1KVTwt: 'Nominal Voltage 1', - nominalVoltage2KVTwt: 'Nominal Voltage 2', - nominalVoltage3KVTwt: 'Nominal Voltage 3', - voltageLevelId1: 'Voltage level ID 1', - voltageLevelId2: 'Voltage level ID 2', - voltageLevelId1Twt: 'Voltage level ID 1', - voltageLevelId2Twt: 'Voltage level ID 2', - voltageLevelId3Twt: 'Voltage level ID 3', - terminal1Connected: 'Connected 1', - terminal2Connected: 'Connected 2', - terminal1ConnectedTwt: 'Connected 1', - terminal2ConnectedTwt: 'Connected 2', - terminal3ConnectedTwt: 'Connected 3', - voltageLevelProperty: 'Voltage level property', - voltageLevelProperty1: 'Voltage level property 1', - voltageLevelProperty2: 'Voltage level property 2', - voltageLevelProperty1Twt: 'Voltage level property 1', - voltageLevelProperty2Twt: 'Voltage level property 2', - voltageLevelProperty3Twt: 'Voltage level property 3', - 'maxQAtNominalV.svar': 'Q max at nominal voltage', - 'minQAtNominalV.svar': 'Q min at nominal voltage', - 'fixQAtNominalV.svar': 'Fixed part of Q at nominal voltage', - 'maxSusceptance.svar': 'Susceptance max', - 'minSusceptance.svar': 'Susceptance min', - regulationMode: 'Regulation mode', - 'regulationMode.off': 'Off', - 'regulationMode.voltage': 'Voltage regulation', - 'regulationMode.reactivePower': 'Reactive power regulation', - voltageSetPoint: 'Voltage set point', - activePowerSetPoint: 'Active power set point', - reactivePowerSetPoint: 'Reactive power set point', - remoteRegulatedTerminal: 'Remote regulated terminal', - regulatingTerminalVLId: 'Voltage Level ID', - regulatingTerminalConnectableId: 'Equipment ID', - regulationType: 'Regulation type', - 'regulationType.distant': 'Remote regulation', - 'regulationType.local': 'Local regulation', - automate: 'Automaton', - lowVoltageSetPoint: 'Low voltage set point', - highVoltageSetPoint: 'High voltage set point', - lowVoltageThreshold: 'Low voltage threshold', - highVoltageThreshold: 'High voltage threshold', - susceptanceFix: 'Fixed part of susceptance', - paired: 'Paired', - converterStationId1: 'Converter station 1 ID', - converterStationId2: 'Converter station 2 ID', - convertersMode: 'Converters mode', - side1RectifierSide2Inverter: 'Flow (Side1->Side2)', - side1InverterSide2Rectifier: 'Flow (Side2->Side1)', - dcNominalVoltage: 'DC nominal voltage', - converterStationNominalVoltage1: 'Converter station 1 nominal voltage', - converterStationNominalVoltage2: 'Converter station 2 nominal voltage', - country1: 'Country 1', - country2: 'Country 2', - seriesResistance: 'Series resistance', - seriesResistance1: 'Series resistance 1', - seriesResistance2: 'Series resistance 2', - seriesResistance3: 'Series resistance 3', - seriesReactance: 'Series reactance', - seriesReactance1: 'Series reactance 1', - seriesReactance2: 'Series reactance 2', - seriesReactance3: 'Series reactance 3', - shuntConductance: 'Shunt conductance', - shuntSusceptance: 'Shunt susceptance', - shuntConductance1: 'Shunt conductance 1', - shuntSusceptance1: 'Shunt susceptance 1', - shuntConductance2: 'Shunt conductance 2', - shuntSusceptance2: 'Shunt susceptance 2', - pairingKey: 'Xnode', - tieLineId: 'Tie line ID', - cannotRetrieveFilter: 'Could not retrieve filter: ', - equality: '=', - notEquality: '!=', - greaterThan: '>', - greaterOrEqual: '>=', - lessThan: '<', - lessOrEqual: '<=', - YupNotTypeNumber: 'This field only accepts numeric values', - YupNotTypeDefault: 'Field value format is incorrect', - changeOperatorMessage: - 'The operator will be changed and will be applied to all the criteria already created in the group.', - lowShortCircuitCurrentLimit: 'Low short-circuit current limit', - highShortCircuitCurrentLimit: 'High short-circuit current limit', - valuesList: 'Values list', -}; +export const filterExpertEn = defineMessages({ + id: { defaultMessage: 'ID' }, + name: { defaultMessage: 'Name' }, + energySource: { defaultMessage: 'Energy source' }, + country: { defaultMessage: 'Country' }, + voltageRegulatorOn: { defaultMessage: 'Voltage regulation' }, + PlannedActivePowerSetPoint: { defaultMessage: 'Planning active power set point' }, + minP: { defaultMessage: 'Minimum active power' }, + maxP: { defaultMessage: 'Maximum active power' }, + targetP: { defaultMessage: 'Active power target' }, + targetV: { defaultMessage: 'Voltage target' }, + targetQ: { defaultMessage: 'Reactive power target' }, + connected: { defaultMessage: 'Connected' }, + maximumSectionCount: { defaultMessage: 'Maximum number of sections' }, + sectionCount: { defaultMessage: 'Current number of sections' }, + shuntCompensatorType: { defaultMessage: 'Type' }, + Capacitor: { defaultMessage: 'Capacitor' }, + Reactor: { defaultMessage: 'Reactor' }, + maxQAtNominalV: { defaultMessage: 'Available Qmax at nominal voltage' }, + SwitchedOnMaxQAtNominalV: { defaultMessage: 'Switch-on Q at nominal voltage' }, + maxSusceptance: { defaultMessage: 'Maximum available susceptance' }, + SwitchedOnMaxSusceptance: { defaultMessage: 'Switch-on susceptance' }, + ratedS: { defaultMessage: 'Rated nominal power' }, + ratedS1: { defaultMessage: 'Rated nominal power side 1' }, + ratedS2: { defaultMessage: 'Rated nominal power side 2' }, + ratedS3: { defaultMessage: 'Rated nominal power side 3' }, + marginalCost: { defaultMessage: 'Cost' }, + plannedOutageRate: { defaultMessage: 'Planning outage rate' }, + forcedOutageRate: { defaultMessage: 'Forced outage rate' }, + vlId: { defaultMessage: 'Voltage level ID' }, + p0: { defaultMessage: 'Constant P' }, + q0: { defaultMessage: 'Constant Q' }, + loadTapChangingCapabilities: { defaultMessage: 'Ratio tap changer on-load' }, + loadTapChangingCapabilities1: { defaultMessage: 'Ratio tap changer 1 on-load' }, + loadTapChangingCapabilities2: { defaultMessage: 'Ratio tap changer 2 on-load' }, + loadTapChangingCapabilities3: { defaultMessage: 'Ratio tap changer 3 on-load' }, + ratioTargetV: { defaultMessage: 'Ratio tap changer voltage set point' }, + ratioTargetV1: { defaultMessage: 'Ratio tap changer 1 voltage set point' }, + ratioTargetV2: { defaultMessage: 'Ratio tap changer 2 voltage set point' }, + ratioTargetV3: { defaultMessage: 'Ratio tap changer 3 voltage set point' }, + magnetizingConductance: { defaultMessage: 'Magnetizing conductance' }, + magnetizingConductance1: { defaultMessage: 'Magnetizing conductance side 1' }, + magnetizingConductance2: { defaultMessage: 'Magnetizing conductance side 2' }, + magnetizingConductance3: { defaultMessage: 'Magnetizing conductance side 3' }, + magnetizingSusceptance: { defaultMessage: 'Magnetizing susceptance' }, + magnetizingSusceptance1: { defaultMessage: 'Magnetizing susceptance side 1' }, + magnetizingSusceptance2: { defaultMessage: 'Magnetizing susceptance side 2' }, + magnetizingSusceptance3: { defaultMessage: 'Magnetizing susceptance side 3' }, + vlNominalVoltage: { defaultMessage: 'Voltage level nominal voltage' }, + lowVoltageLimit: { defaultMessage: 'Low voltage limit' }, + highVoltageLimit: { defaultMessage: 'High voltage limit' }, + selectFilterDialogTitle: { defaultMessage: 'Choose a filter' }, + filter: { defaultMessage: 'Filter' }, + loadType: { defaultMessage: 'Type' }, + Undefined: { defaultMessage: 'Undefined' }, + Auxiliary: { defaultMessage: 'Auxiliary' }, + Fictitious: { defaultMessage: 'Fictitious' }, + hasRatioTapChanger: { defaultMessage: 'Ratio tap changer exists' }, + hasRatioTapChanger1: { defaultMessage: 'Ratio tap 1 changer exists' }, + hasRatioTapChanger2: { defaultMessage: 'Ratio tap 2 changer exists' }, + hasRatioTapChanger3: { defaultMessage: 'Ratio tap 3 changer exists' }, + hasPhaseTapChanger: { defaultMessage: 'Phase tap changer exists' }, + hasPhaseTapChanger1: { defaultMessage: 'Phase tap 1 changer exists' }, + hasPhaseTapChanger2: { defaultMessage: 'Phase tap 2 changer exists' }, + hasPhaseTapChanger3: { defaultMessage: 'Phase tap 3 changer exists' }, + Voltage: { defaultMessage: 'Voltage' }, + ReactivePower: { defaultMessage: 'Reactive power' }, + VoltageRegulation: { defaultMessage: 'Voltage regulation' }, + FixedRatio: { defaultMessage: 'Fixed ratio' }, + CurrentLimiter: { defaultMessage: 'Current limiter' }, + ActivePowerControl: { defaultMessage: 'Active power control' }, + FixedTap: { defaultMessage: 'Fixed tap' }, + ratioRegulationMode: { defaultMessage: 'Ratio tap changer regulation mode' }, + ratioRegulationMode1: { defaultMessage: 'Ratio tap 1 changer regulation mode' }, + ratioRegulationMode2: { defaultMessage: 'Ratio tap 2 changer regulation mode' }, + ratioRegulationMode3: { defaultMessage: 'Ratio tap 3 changer regulation mode' }, + phaseRegulationMode: { defaultMessage: 'Phase tap changer regulation mode' }, + phaseRegulationMode1: { defaultMessage: 'Phase tap 1 changer regulation mode' }, + phaseRegulationMode2: { defaultMessage: 'Phase tap 2 changer regulation mode' }, + phaseRegulationMode3: { defaultMessage: 'Phase tap 3 changer regulation mode' }, + phaseRegulationValue: { defaultMessage: 'Phase tap changer flow set point or current limit' }, + phaseRegulationValue1: { defaultMessage: 'Phase tap 1 changer flow set point or current limit' }, + phaseRegulationValue2: { defaultMessage: 'Phase tap 2 changer flow set point or current limit' }, + phaseRegulationValue3: { defaultMessage: 'Phase tap 3 changer flow set point or current limit' }, + property: { defaultMessage: 'Property' }, + substationProperty: { defaultMessage: 'Substation property' }, + substationProperty1: { defaultMessage: 'Substation property 1' }, + substationProperty2: { defaultMessage: 'Substation property 2' }, + substationProperty1Twt: { defaultMessage: 'Substation property 1' }, + substationProperty2Twt: { defaultMessage: 'Substation property 2' }, + ratedVoltage1KV: { defaultMessage: 'Rated Voltage 1' }, + ratedVoltage2KV: { defaultMessage: 'Rated Voltage 2' }, + ratedVoltage0KVTwt: { defaultMessage: 'Rated Voltage 0' }, + ratedVoltage1KVTwt: { defaultMessage: 'Rated Voltage 1' }, + ratedVoltage2KVTwt: { defaultMessage: 'Rated Voltage 2' }, + ratedVoltage3KVTwt: { defaultMessage: 'Rated Voltage 3' }, + nominalVoltage1: { defaultMessage: 'Nominal Voltage 1' }, + nominalVoltage2: { defaultMessage: 'Nominal Voltage 2' }, + nominalVoltage3: { defaultMessage: 'Nominal Voltage 3' }, + nominalVoltage1KV: { defaultMessage: 'Nominal Voltage 1' }, + nominalVoltage2KV: { defaultMessage: 'Nominal Voltage 2' }, + nominalVoltage1KVTwt: { defaultMessage: 'Nominal Voltage 1' }, + nominalVoltage2KVTwt: { defaultMessage: 'Nominal Voltage 2' }, + nominalVoltage3KVTwt: { defaultMessage: 'Nominal Voltage 3' }, + voltageLevelId1: { defaultMessage: 'Voltage level ID 1' }, + voltageLevelId2: { defaultMessage: 'Voltage level ID 2' }, + voltageLevelId1Twt: { defaultMessage: 'Voltage level ID 1' }, + voltageLevelId2Twt: { defaultMessage: 'Voltage level ID 2' }, + voltageLevelId3Twt: { defaultMessage: 'Voltage level ID 3' }, + terminal1Connected: { defaultMessage: 'Connected 1' }, + terminal2Connected: { defaultMessage: 'Connected 2' }, + terminal1ConnectedTwt: { defaultMessage: 'Connected 1' }, + terminal2ConnectedTwt: { defaultMessage: 'Connected 2' }, + terminal3ConnectedTwt: { defaultMessage: 'Connected 3' }, + voltageLevelProperty: { defaultMessage: 'Voltage level property' }, + voltageLevelProperty1: { defaultMessage: 'Voltage level property 1' }, + voltageLevelProperty2: { defaultMessage: 'Voltage level property 2' }, + voltageLevelProperty1Twt: { defaultMessage: 'Voltage level property 1' }, + voltageLevelProperty2Twt: { defaultMessage: 'Voltage level property 2' }, + voltageLevelProperty3Twt: { defaultMessage: 'Voltage level property 3' }, + 'maxQAtNominalV.svar': { defaultMessage: 'Q max at nominal voltage' }, + 'minQAtNominalV.svar': { defaultMessage: 'Q min at nominal voltage' }, + 'fixQAtNominalV.svar': { defaultMessage: 'Fixed part of Q at nominal voltage' }, + 'maxSusceptance.svar': { defaultMessage: 'Susceptance max' }, + 'minSusceptance.svar': { defaultMessage: 'Susceptance min' }, + regulationMode: { defaultMessage: 'Regulation mode' }, + 'regulationMode.off': { defaultMessage: 'Off' }, + 'regulationMode.voltage': { defaultMessage: 'Voltage regulation' }, + 'regulationMode.reactivePower': { defaultMessage: 'Reactive power regulation' }, + voltageSetPoint: { defaultMessage: 'Voltage set point' }, + activePowerSetPoint: { defaultMessage: 'Active power set point' }, + reactivePowerSetPoint: { defaultMessage: 'Reactive power set point' }, + remoteRegulatedTerminal: { defaultMessage: 'Remote regulated terminal' }, + regulatingTerminalVLId: { defaultMessage: 'Voltage Level ID' }, + regulatingTerminalConnectableId: { defaultMessage: 'Equipment ID' }, + regulationType: { defaultMessage: 'Regulation type' }, + 'regulationType.distant': { defaultMessage: 'Remote regulation' }, + 'regulationType.local': { defaultMessage: 'Local regulation' }, + automate: { defaultMessage: 'Automaton' }, + lowVoltageSetPoint: { defaultMessage: 'Low voltage set point' }, + highVoltageSetPoint: { defaultMessage: 'High voltage set point' }, + lowVoltageThreshold: { defaultMessage: 'Low voltage threshold' }, + highVoltageThreshold: { defaultMessage: 'High voltage threshold' }, + susceptanceFix: { defaultMessage: 'Fixed part of susceptance' }, + paired: { defaultMessage: 'Paired' }, + converterStationId1: { defaultMessage: 'Converter station 1 ID' }, + converterStationId2: { defaultMessage: 'Converter station 2 ID' }, + convertersMode: { defaultMessage: 'Converters mode' }, + side1RectifierSide2Inverter: { defaultMessage: 'Flow (Side1->Side2)' }, + side1InverterSide2Rectifier: { defaultMessage: 'Flow (Side2->Side1)' }, + dcNominalVoltage: { defaultMessage: 'DC nominal voltage' }, + converterStationNominalVoltage1: { defaultMessage: 'Converter station 1 nominal voltage' }, + converterStationNominalVoltage2: { defaultMessage: 'Converter station 2 nominal voltage' }, + country1: { defaultMessage: 'Country 1' }, + country2: { defaultMessage: 'Country 2' }, + seriesResistance: { defaultMessage: 'Series resistance' }, + seriesResistance1: { defaultMessage: 'Series resistance 1' }, + seriesResistance2: { defaultMessage: 'Series resistance 2' }, + seriesResistance3: { defaultMessage: 'Series resistance 3' }, + seriesReactance: { defaultMessage: 'Series reactance' }, + seriesReactance1: { defaultMessage: 'Series reactance 1' }, + seriesReactance2: { defaultMessage: 'Series reactance 2' }, + seriesReactance3: { defaultMessage: 'Series reactance 3' }, + shuntConductance: { defaultMessage: 'Shunt conductance' }, + shuntSusceptance: { defaultMessage: 'Shunt susceptance' }, + shuntConductance1: { defaultMessage: 'Shunt conductance 1' }, + shuntSusceptance1: { defaultMessage: 'Shunt susceptance 1' }, + shuntConductance2: { defaultMessage: 'Shunt conductance 2' }, + shuntSusceptance2: { defaultMessage: 'Shunt susceptance 2' }, + pairingKey: { defaultMessage: 'Xnode' }, + tieLineId: { defaultMessage: 'Tie line ID' }, + cannotRetrieveFilter: { defaultMessage: 'Could not retrieve filter: ' }, + equality: { defaultMessage: '=' }, + notEquality: { defaultMessage: '!=' }, + greaterThan: { defaultMessage: '>' }, + greaterOrEqual: { defaultMessage: '>=' }, + lessThan: { defaultMessage: '<' }, + lessOrEqual: { defaultMessage: '<=' }, + YupNotTypeNumber: { defaultMessage: 'This field only accepts numeric values' }, + YupNotTypeDefault: { defaultMessage: 'Field value format is incorrect' }, + changeOperatorMessage: { + defaultMessage: + 'The operator will be changed and will be applied to all the criteria already created in the group.', + }, + lowShortCircuitCurrentLimit: { defaultMessage: 'Low short-circuit current limit' }, + highShortCircuitCurrentLimit: { defaultMessage: 'High short-circuit current limit' }, + valuesList: { defaultMessage: 'Values list' }, +}); diff --git a/src/translations/en/flatParametersEn.ts b/src/translations/en/flatParametersEn.ts index 6c00d581f..78fba2e61 100644 --- a/src/translations/en/flatParametersEn.ts +++ b/src/translations/en/flatParametersEn.ts @@ -4,9 +4,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const flatParametersEn = { - 'flat_parameters/none': 'None', - 'flat_parameters/some': 'Some', - 'flat_parameters/all': 'All', -}; +export const flatParametersEn = defineMessages({ + 'flat_parameters/none': { defaultMessage: 'None' }, + 'flat_parameters/some': { defaultMessage: 'Some' }, + 'flat_parameters/all': { defaultMessage: 'All' }, +}); diff --git a/src/translations/en/inputsEn.ts b/src/translations/en/inputsEn.ts index 3cd06778a..8c510b881 100644 --- a/src/translations/en/inputsEn.ts +++ b/src/translations/en/inputsEn.ts @@ -4,22 +4,23 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const inputsEn = { - 'inputs/kiki': 'Kylian Mbappe', - 'inputs/ney': 'Neymar', - 'inputs/lapulga': 'Lionel Messi', - 'inputs/ibra': 'Zlatan Ibrahimovic', - 'inputs/float': 'Float', - 'inputs/integer': 'Integer', - 'inputs/radio': 'Radio', - 'inputs/select': 'Select', - 'inputs/slider': 'Slider', - 'inputs/text': 'Text', - 'inputs/description': 'Description', - 'inputs/autocomplete': 'Autocomplete', - 'inputs/boolean': 'Boolean', - 'inputs/checkbox': 'Checkbox', - 'inputs/switch': 'Switch', - Optional: 'Optional', -}; +export const inputsEn = defineMessages({ + 'inputs/kiki': { defaultMessage: 'Kylian Mbappe' }, + 'inputs/ney': { defaultMessage: 'Neymar' }, + 'inputs/lapulga': { defaultMessage: 'Lionel Messi' }, + 'inputs/ibra': { defaultMessage: 'Zlatan Ibrahimovic' }, + 'inputs/float': { defaultMessage: 'Float' }, + 'inputs/integer': { defaultMessage: 'Integer' }, + 'inputs/radio': { defaultMessage: 'Radio' }, + 'inputs/select': { defaultMessage: 'Select' }, + 'inputs/slider': { defaultMessage: 'Slider' }, + 'inputs/text': { defaultMessage: 'Text' }, + 'inputs/description': { defaultMessage: 'Description' }, + 'inputs/autocomplete': { defaultMessage: 'Autocomplete' }, + 'inputs/boolean': { defaultMessage: 'Boolean' }, + 'inputs/checkbox': { defaultMessage: 'Checkbox' }, + 'inputs/switch': { defaultMessage: 'Switch' }, + Optional: { defaultMessage: 'Optional' }, +}); diff --git a/src/translations/en/loginEn.ts b/src/translations/en/loginEn.ts index 9787811b2..c2db62416 100644 --- a/src/translations/en/loginEn.ts +++ b/src/translations/en/loginEn.ts @@ -4,15 +4,20 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const loginEn = { - 'login/login': 'Login', - 'login/connection': 'Connection', - 'login/unauthorizedAccess': 'Unauthorized access', - 'login/unauthorizedAccessMessage': 'The user {userName} does not have permission to access GridSuite yet.', - 'login/errorInUserValidation': 'Error during user validation', - 'login/errorInUserValidationMessage': 'An unexpected error occured during user validation for {userName}.', - 'login/errorInLogout': 'Error during user logout', - 'login/errorInLogoutMessage': 'An unexpected error occured during user logout for {userName}.', - 'login/logout': 'Logout', -}; +export const loginEn = defineMessages({ + 'login/login': { defaultMessage: 'Login' }, + 'login/connection': { defaultMessage: 'Connection' }, + 'login/unauthorizedAccess': { defaultMessage: 'Unauthorized access' }, + 'login/unauthorizedAccessMessage': { + defaultMessage: 'The user {userName} does not have permission to access GridSuite yet.', + }, + 'login/errorInUserValidation': { defaultMessage: 'Error during user validation' }, + 'login/errorInUserValidationMessage': { + defaultMessage: 'An unexpected error occurred during user validation for {userName}.', + }, + 'login/errorInLogout': { defaultMessage: 'Error during user logout' }, + 'login/errorInLogoutMessage': { defaultMessage: 'An unexpected error occurred during user logout for {userName}.' }, + 'login/logout': { defaultMessage: 'Logout' }, +}); diff --git a/src/translations/en/multipleSelectionDialogEn.ts b/src/translations/en/multipleSelectionDialogEn.ts index d21b19f68..510e4e270 100644 --- a/src/translations/en/multipleSelectionDialogEn.ts +++ b/src/translations/en/multipleSelectionDialogEn.ts @@ -4,9 +4,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const multipleSelectionDialogEn = { - 'multiple_selection_dialog/cancel': 'Cancel', - 'multiple_selection_dialog/validate': 'Validate', - 'multiple_selection_dialog/selectAll': 'Select all', -}; +export const multipleSelectionDialogEn = defineMessages({ + 'multiple_selection_dialog/cancel': { defaultMessage: 'Cancel' }, + 'multiple_selection_dialog/validate': { defaultMessage: 'Validate' }, + 'multiple_selection_dialog/selectAll': { defaultMessage: 'Select all' }, +}); diff --git a/src/translations/en/networkModificationsEn.ts b/src/translations/en/networkModificationsEn.ts index 1b17dbcd4..495c857e2 100644 --- a/src/translations/en/networkModificationsEn.ts +++ b/src/translations/en/networkModificationsEn.ts @@ -4,65 +4,93 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const networkModificationsEn = { - 'network_modifications.modificationsCount': - '{hide, select, false {{count, plural, =0 {no modification} =1 {{count} modification} other {{count} modifications}}} other {...}}', - 'network_modifications.EQUIPMENT_DELETION': 'Deletion of {computedLabel}', - 'network_modifications.BY_FILTER_DELETION': 'By filter deletion ({computedLabel})', - 'network_modifications.SUBSTATION_CREATION': 'Creating substation {computedLabel}', - 'network_modifications.SUBSTATION_MODIFICATION': 'Modifying substation {computedLabel}', - 'network_modifications.VOLTAGE_LEVEL_CREATION': 'Creating voltage level {computedLabel}', - 'network_modifications.VOLTAGE_LEVEL_MODIFICATION': 'Modifying voltage level {computedLabel}', - 'network_modifications.LINE_SPLIT_WITH_VOLTAGE_LEVEL': 'Splitting a line {computedLabel}', - 'network_modifications.LINE_ATTACH_TO_VOLTAGE_LEVEL': 'Attaching line {computedLabel}', - 'network_modifications.LINES_ATTACH_TO_SPLIT_LINES': 'Attaching lines to splitting lines {computedLabel}', - 'network_modifications.LOAD_SCALING': 'Load scaling {computedLabel}', - 'network_modifications.DELETE_VOLTAGE_LEVEL_ON_LINE': 'Deleting a voltage level on a line {computedLabel}', - 'network_modifications.DELETE_ATTACHING_LINE': 'Deleting attaching line {computedLabel}', - 'network_modifications.LOAD_CREATION': 'Creating load {computedLabel}', - 'network_modifications.LOAD_MODIFICATION': 'Modifying load {computedLabel}', - 'network_modifications.BATTERY_CREATION': 'Creating battery {computedLabel}', - 'network_modifications.BATTERY_MODIFICATION': 'Modifying battery {computedLabel}', - 'network_modifications.GENERATOR_CREATION': 'Creating generator {computedLabel}', - 'network_modifications.GENERATOR_MODIFICATION': 'Modifying generator {computedLabel}', - 'network_modifications.LINE_CREATION': 'Creating line {computedLabel}', - 'network_modifications.LINE_MODIFICATION': 'Modifying line {computedLabel}', - 'network_modifications.TWO_WINDINGS_TRANSFORMER_CREATION': 'Creating 2 windings transformer {computedLabel}', - 'network_modifications.TWO_WINDINGS_TRANSFORMER_MODIFICATION': 'Modifying 2 windings transformer {computedLabel}', - 'network_modifications.OPERATING_STATUS_MODIFICATION': - '{action, select, TRIP {Trip {computedLabel}} LOCKOUT {Lock out {computedLabel}} ENERGISE_END_ONE {Energise {computedLabel} on {energizedEnd}} ENERGISE_END_TWO {Energise {computedLabel} on {energizedEnd}} SWITCH_ON {Switch on {computedLabel}} other {Equipment operating status modification {computedLabel}}}', - 'network_modifications.SHUNT_COMPENSATOR_CREATION': 'Creating shunt compensator {computedLabel}', - 'network_modifications.SHUNT_COMPENSATOR_MODIFICATION': 'Modifying shunt compensator {computedLabel}', - 'network_modifications.GENERATOR_SCALING': 'Generator scaling {computedLabel}', - 'network_modifications.VSC_CREATION': 'Creating HVDC (VSC) {computedLabel}', - 'network_modifications.VSC_MODIFICATION': 'Modifing HVDC (VSC) {computedLabel}', - 'network_modifications.GROOVY_SCRIPT': 'Modification by script', - 'network_modifications.EQUIPMENT_ATTRIBUTE_MODIFICATION': - '{equipmentAttributeName, select, open {{equipmentAttributeValue, select, true {Open {computedLabel}} other {Close {computedLabel}}}} other {Equipment modification {computedLabel}}}', - 'network_modifications.creatingModification': 'Creating modification ...', - 'network_modifications.deletingModification': 'Deleting modification ...', - 'network_modifications.updatingModification': 'Updating modification ...', - 'network_modifications.stashingModification': 'Stashing modification ...', - 'network_modifications.restoringModification': 'Restoring modification ...', - 'network_modifications.modifications': 'Updating modification list ...', - 'network_modifications.GENERATION_DISPATCH': 'Generation dispatch {computedLabel}', - 'network_modifications.VOLTAGE_INIT_MODIFICATION': 'Voltage profile initialization {computedLabel}', - 'network_modifications.TABULAR_MODIFICATION': 'Tabular modification - {computedLabel}', - 'network_modifications.tabular.GENERATOR_MODIFICATION': 'generator modifications', - 'network_modifications.tabular.LOAD_MODIFICATION': 'load modifications', - 'network_modifications.BY_FORMULA_MODIFICATION': 'Modification by formula {computedLabel}', - 'network_modifications.MODIFICATION_BY_ASSIGNMENT': 'Modification by filter {computedLabel}', - 'network_modifications.tabular.LINE_MODIFICATION': 'line modifications', - 'network_modifications.tabular.BATTERY_MODIFICATION': 'battery modifications', - 'network_modifications.tabular.VOLTAGE_LEVEL_MODIFICATION': 'voltage level modifications', - 'network_modifications.tabular.TWO_WINDINGS_TRANSFORMER_MODIFICATION': 'two windings transformer modifications', - 'network_modifications.tabular.SHUNT_COMPENSATOR_MODIFICATION': 'linear shunt compensator modifications', - 'network_modifications.tabular.SUBSTATION_MODIFICATION': 'substation modifications', - 'network_modifications.TABULAR_CREATION': 'Tabular creation - {computedLabel}', - 'network_modifications.tabular.GENERATOR_CREATION': 'generator creations', - 'network_modifications.LCC_CREATION': 'Creating HVDC (LCC) {computedLabel}', - 'network_modifications.STATIC_VAR_COMPENSATOR_CREATION': 'Creating static var compensator {computedLabel}', - 'network_modifications.VOLTAGE_LEVEL_CREATION_SUBSTATION_CREATION': - 'Creating voltage level {voltageLevelEquipmentId} and substation {substationEquipmentId}', -}; +export const networkModificationsEn = defineMessages({ + 'network_modifications.modificationsCount': { + defaultMessage: + '{hide, select, false {{count, plural, zero {no modification} one {# modification} other {# modifications}}} other {...}}', + }, + 'network_modifications.EQUIPMENT_DELETION': { defaultMessage: 'Deletion of {computedLabel}' }, + 'network_modifications.BY_FILTER_DELETION': { defaultMessage: 'By filter deletion ({computedLabel})' }, + 'network_modifications.SUBSTATION_CREATION': { defaultMessage: 'Creating substation {computedLabel}' }, + 'network_modifications.SUBSTATION_MODIFICATION': { defaultMessage: 'Modifying substation {computedLabel}' }, + 'network_modifications.VOLTAGE_LEVEL_CREATION': { defaultMessage: 'Creating voltage level {computedLabel}' }, + 'network_modifications.VOLTAGE_LEVEL_MODIFICATION': { defaultMessage: 'Modifying voltage level {computedLabel}' }, + 'network_modifications.LINE_SPLIT_WITH_VOLTAGE_LEVEL': { defaultMessage: 'Splitting a line {computedLabel}' }, + 'network_modifications.LINE_ATTACH_TO_VOLTAGE_LEVEL': { defaultMessage: 'Attaching line {computedLabel}' }, + 'network_modifications.LINES_ATTACH_TO_SPLIT_LINES': { + defaultMessage: 'Attaching lines to splitting lines {computedLabel}', + }, + 'network_modifications.LOAD_SCALING': { defaultMessage: 'Load scaling {computedLabel}' }, + 'network_modifications.DELETE_VOLTAGE_LEVEL_ON_LINE': { + defaultMessage: 'Deleting a voltage level on a line {computedLabel}', + }, + 'network_modifications.DELETE_ATTACHING_LINE': { defaultMessage: 'Deleting attaching line {computedLabel}' }, + 'network_modifications.LOAD_CREATION': { defaultMessage: 'Creating load {computedLabel}' }, + 'network_modifications.LOAD_MODIFICATION': { defaultMessage: 'Modifying load {computedLabel}' }, + 'network_modifications.BATTERY_CREATION': { defaultMessage: 'Creating battery {computedLabel}' }, + 'network_modifications.BATTERY_MODIFICATION': { defaultMessage: 'Modifying battery {computedLabel}' }, + 'network_modifications.GENERATOR_CREATION': { defaultMessage: 'Creating generator {computedLabel}' }, + 'network_modifications.GENERATOR_MODIFICATION': { defaultMessage: 'Modifying generator {computedLabel}' }, + 'network_modifications.LINE_CREATION': { defaultMessage: 'Creating line {computedLabel}' }, + 'network_modifications.LINE_MODIFICATION': { defaultMessage: 'Modifying line {computedLabel}' }, + 'network_modifications.TWO_WINDINGS_TRANSFORMER_CREATION': { + defaultMessage: 'Creating 2 windings transformer {computedLabel}', + }, + 'network_modifications.TWO_WINDINGS_TRANSFORMER_MODIFICATION': { + defaultMessage: 'Modifying 2 windings transformer {computedLabel}', + }, + 'network_modifications.OPERATING_STATUS_MODIFICATION': { + defaultMessage: + '{action, select, TRIP {Trip {computedLabel}} LOCKOUT {Lock out {computedLabel}} ENERGISE_END_ONE {Energise {computedLabel} on {energizedEnd}} ENERGISE_END_TWO {Energise {computedLabel} on {energizedEnd}} SWITCH_ON {Switch on {computedLabel}} other {Equipment operating status modification {computedLabel}}}', + }, + 'network_modifications.SHUNT_COMPENSATOR_CREATION': { + defaultMessage: 'Creating shunt compensator {computedLabel}', + }, + 'network_modifications.SHUNT_COMPENSATOR_MODIFICATION': { + defaultMessage: 'Modifying shunt compensator {computedLabel}', + }, + 'network_modifications.GENERATOR_SCALING': { defaultMessage: 'Generator scaling {computedLabel}' }, + 'network_modifications.VSC_CREATION': { defaultMessage: 'Creating HVDC (VSC) {computedLabel}' }, + 'network_modifications.VSC_MODIFICATION': { defaultMessage: 'Modifing HVDC (VSC) {computedLabel}' }, + 'network_modifications.GROOVY_SCRIPT': { defaultMessage: 'Modification by script' }, + 'network_modifications.EQUIPMENT_ATTRIBUTE_MODIFICATION': { + defaultMessage: + '{equipmentAttributeName, select, open {{equipmentAttributeValue, select, true {Open {computedLabel}} other {Close {computedLabel}}}} other {Equipment modification {computedLabel}}}', + }, + 'network_modifications.creatingModification': { defaultMessage: 'Creating modification ...' }, + 'network_modifications.deletingModification': { defaultMessage: 'Deleting modification ...' }, + 'network_modifications.updatingModification': { defaultMessage: 'Updating modification ...' }, + 'network_modifications.stashingModification': { defaultMessage: 'Stashing modification ...' }, + 'network_modifications.restoringModification': { defaultMessage: 'Restoring modification ...' }, + 'network_modifications.modifications': { defaultMessage: 'Updating modification list ...' }, + 'network_modifications.GENERATION_DISPATCH': { defaultMessage: 'Generation dispatch {computedLabel}' }, + 'network_modifications.VOLTAGE_INIT_MODIFICATION': { + defaultMessage: 'Voltage profile initialization {computedLabel}', + }, + 'network_modifications.TABULAR_MODIFICATION': { defaultMessage: 'Tabular modification - {computedLabel}' }, + 'network_modifications.tabular.GENERATOR_MODIFICATION': { defaultMessage: 'generator modifications' }, + 'network_modifications.tabular.LOAD_MODIFICATION': { defaultMessage: 'load modifications' }, + 'network_modifications.BY_FORMULA_MODIFICATION': { defaultMessage: 'Modification by formula {computedLabel}' }, + 'network_modifications.MODIFICATION_BY_ASSIGNMENT': { defaultMessage: 'Modification by filter {computedLabel}' }, + 'network_modifications.tabular.LINE_MODIFICATION': { defaultMessage: 'line modifications' }, + 'network_modifications.tabular.BATTERY_MODIFICATION': { defaultMessage: 'battery modifications' }, + 'network_modifications.tabular.VOLTAGE_LEVEL_MODIFICATION': { defaultMessage: 'voltage level modifications' }, + 'network_modifications.tabular.TWO_WINDINGS_TRANSFORMER_MODIFICATION': { + defaultMessage: 'two windings transformer modifications', + }, + 'network_modifications.tabular.SHUNT_COMPENSATOR_MODIFICATION': { + defaultMessage: 'linear shunt compensator modifications', + }, + 'network_modifications.tabular.SUBSTATION_MODIFICATION': { defaultMessage: 'substation modifications' }, + 'network_modifications.TABULAR_CREATION': { defaultMessage: 'Tabular creation - {computedLabel}' }, + 'network_modifications.tabular.GENERATOR_CREATION': { defaultMessage: 'generator creations' }, + 'network_modifications.LCC_CREATION': { defaultMessage: 'Creating HVDC (LCC) {computedLabel}' }, + 'network_modifications.STATIC_VAR_COMPENSATOR_CREATION': { + defaultMessage: 'Creating static var compensator {computedLabel}', + }, + 'network_modifications.VOLTAGE_LEVEL_CREATION_SUBSTATION_CREATION': { + defaultMessage: 'Creating voltage level {voltageLevelEquipmentId} and substation {substationEquipmentId}', + }, +}); diff --git a/src/translations/en/reportViewerEn.ts b/src/translations/en/reportViewerEn.ts index bba53254c..e3b1b4e90 100644 --- a/src/translations/en/reportViewerEn.ts +++ b/src/translations/en/reportViewerEn.ts @@ -4,9 +4,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const reportViewerEn = { - 'report_viewer/close': 'Close', - 'report_viewer/severity': 'Severity', - 'report_viewer/message': 'Message', -}; +export const reportViewerEn = defineMessages({ + 'report_viewer/close': { defaultMessage: 'Close' }, + 'report_viewer/severity': { defaultMessage: 'Severity' }, + 'report_viewer/message': { defaultMessage: 'Message' }, +}); diff --git a/src/translations/en/tableEn.ts b/src/translations/en/tableEn.ts index 71416372f..05fb2f6bf 100644 --- a/src/translations/en/tableEn.ts +++ b/src/translations/en/tableEn.ts @@ -4,7 +4,8 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const tableEn = { - 'MuiVirtualizedTable/exportCSV': 'Download CSV', -}; +export const tableEn = defineMessages({ + 'MuiVirtualizedTable/exportCSV': { defaultMessage: 'Download CSV' }, +}); diff --git a/src/translations/en/topBarEn.ts b/src/translations/en/topBarEn.ts index 9e7296df8..fd33076a6 100644 --- a/src/translations/en/topBarEn.ts +++ b/src/translations/en/topBarEn.ts @@ -4,48 +4,54 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const topBarEn = { - 'top-bar/userSettings': 'User settings', - 'top-bar/logout': 'Logout', - 'top-bar/goFullScreen': 'Full screen', - 'top-bar/exitFullScreen': 'Exit full screen mode', - 'top-bar/userInformation': 'User information', - 'top-bar/about': 'About', - 'top-bar/displayMode': 'Display mode', - 'top-bar/equipmentLabel': 'Equipment label', - 'top-bar/id': 'Id', - 'top-bar/name': 'Name', - 'top-bar/language': 'Language', - 'top-bar/developerModeWarning': 'Developer mode: Some features are incomplete and may not work as expected.', +export const topBarEn = defineMessages({ + 'top-bar/userSettings': { defaultMessage: 'User settings' }, + 'top-bar/logout': { defaultMessage: 'Logout' }, + 'top-bar/goFullScreen': { defaultMessage: 'Full screen' }, + 'top-bar/exitFullScreen': { defaultMessage: 'Exit full screen mode' }, + 'top-bar/userInformation': { defaultMessage: 'User information' }, + 'top-bar/about': { defaultMessage: 'About' }, + 'top-bar/displayMode': { defaultMessage: 'Display mode' }, + 'top-bar/equipmentLabel': { defaultMessage: 'Equipment label' }, + 'top-bar/id': { defaultMessage: 'Id' }, + 'top-bar/name': { defaultMessage: 'Name' }, + 'top-bar/language': { defaultMessage: 'Language' }, + 'top-bar/developerModeWarning': { + defaultMessage: 'Developer mode: Some features are incomplete and may not work as expected.', + }, - 'about-dialog/title': 'About', - 'about-dialog/version': 'Version {version}', - 'about-dialog/alert-running-old-version-msg': - 'Running old version.\nSave your work and refresh the application to load the latest version.', - 'about-dialog/license': 'License', - 'about-dialog/modules-section': 'Modules details', - 'about-dialog/label-version': 'Version', - 'about-dialog/label-git-version': 'Tag', - 'about-dialog/label-type': 'Type', - 'about-dialog/module-tooltip-app': 'application', - 'about-dialog/module-tooltip-server': 'server', - 'about-dialog/module-tooltip-other': 'other', + 'about-dialog/title': { defaultMessage: 'About' }, + 'about-dialog/version': { defaultMessage: 'Version {version}' }, + 'about-dialog/alert-running-old-version-msg': { + defaultMessage: 'Running old version.\nSave your work and refresh the application to load the latest version.', + }, + 'about-dialog/license': { defaultMessage: 'License' }, + 'about-dialog/modules-section': { defaultMessage: 'Modules details' }, + 'about-dialog/label-version': { defaultMessage: 'Version' }, + 'about-dialog/label-git-version': { defaultMessage: 'Tag' }, + 'about-dialog/label-type': { defaultMessage: 'Type' }, + 'about-dialog/module-tooltip-app': { defaultMessage: 'application' }, + 'about-dialog/module-tooltip-server': { defaultMessage: 'server' }, + 'about-dialog/module-tooltip-other': { defaultMessage: 'other' }, - 'user-information-dialog/title': 'User information', - 'user-information-dialog/role': 'Role', - 'user-information-dialog/role-user': 'Basic user', - 'user-information-dialog/role-admin': 'Admin', - 'user-information-dialog/profile': 'Profile', - 'user-information-dialog/no-profile': 'No profile', - 'user-information-dialog/quotas': 'User quotas', - 'user-information-dialog/number-of-cases-or-studies': 'Number of cases or studies', - 'user-information-dialog/used': 'Used', - 'user-information-dialog/number-of-builds-per-study': 'Number of builds per study', + 'user-information-dialog/title': { defaultMessage: 'User information' }, + 'user-information-dialog/role': { defaultMessage: 'Role' }, + 'user-information-dialog/role-user': { defaultMessage: 'Basic user' }, + 'user-information-dialog/role-admin': { defaultMessage: 'Admin' }, + 'user-information-dialog/profile': { defaultMessage: 'Profile' }, + 'user-information-dialog/no-profile': { defaultMessage: 'No profile' }, + 'user-information-dialog/quotas': { defaultMessage: 'User quotas' }, + 'user-information-dialog/number-of-cases-or-studies': { defaultMessage: 'Number of cases or studies' }, + 'user-information-dialog/used': { defaultMessage: 'Used: {nb}' }, + 'user-information-dialog/number-of-builds-per-study': { defaultMessage: 'Number of builds per study' }, - 'user-settings-dialog/title': 'User settings', - 'user-settings-dialog/label-developer-mode': 'Developer mode', - 'user-settings-dialog/warning-developer-mode': - 'Some of the features are not complete, so they may not work as expected. To hide these features, disable developer mode.', - 'user-settings-dialog/close': 'Close', -}; + 'user-settings-dialog/title': { defaultMessage: 'User settings' }, + 'user-settings-dialog/label-developer-mode': { defaultMessage: 'Developer mode' }, + 'user-settings-dialog/warning-developer-mode': { + defaultMessage: + 'Some of the features are not complete, so they may not work as expected. To hide these features, disable developer mode.', + }, + 'user-settings-dialog/close': { defaultMessage: 'Close' }, +}); diff --git a/src/translations/en/treeviewFinderEn.ts b/src/translations/en/treeviewFinderEn.ts index b50faf537..f16790157 100644 --- a/src/translations/en/treeviewFinderEn.ts +++ b/src/translations/en/treeviewFinderEn.ts @@ -4,18 +4,27 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const treeviewFinderEn = { - 'treeview_finder/close': 'Close', - 'treeview_finder/validate': 'Validate', - 'treeview_finder/add': 'Add...', - 'treeview_finder/deleteSelection': 'Delete selection', - 'treeview_finder/contentText': - '{multiSelect, select, true {Please choose one or more element(s).} false {Please choose one element.} other {}}', - 'treeview_finder/finderTitle': - '{multiSelect, select, true {Please choose one or more element(s).} false {Please choose one element.} other {}}', - 'treeview_finder/addElementsValidation': - '{nbElements, plural, =0 {Please select an element} =1 {Add this element} other{Add # elements}}', - 'treeview_finder/replaceElementsValidation': - '{nbElements, plural, =0 {Please select an element} =1 {Replace with this element} other{Replace with # elements}}', -}; +export const treeviewFinderEn = defineMessages({ + 'treeview_finder/close': { defaultMessage: 'Close' }, + 'treeview_finder/validate': { defaultMessage: 'Validate' }, + 'treeview_finder/add': { defaultMessage: 'Add...' }, + 'treeview_finder/deleteSelection': { defaultMessage: 'Delete selection' }, + 'treeview_finder/contentText': { + defaultMessage: + '{multiSelect, select, true {Please choose one or more element(s).} false {Please choose one element.} other {}}', + }, + 'treeview_finder/finderTitle': { + defaultMessage: + '{multiSelect, select, true {Please choose one or more element(s).} false {Please choose one element.} other {}}', + }, + 'treeview_finder/addElementsValidation': { + defaultMessage: + '{nbElements, plural, zero {Please select an element} one {Add this element} other {Add # elements}}', + }, + 'treeview_finder/replaceElementsValidation': { + defaultMessage: + '{nbElements, plural, zero {Please select an element} one {Replace with this element} other {Replace with # elements}}', + }, +}); diff --git a/src/translations/fr/cardErrorBoundaryFr.ts b/src/translations/fr/cardErrorBoundaryFr.ts index 786eead5d..a73b14170 100644 --- a/src/translations/fr/cardErrorBoundaryFr.ts +++ b/src/translations/fr/cardErrorBoundaryFr.ts @@ -4,11 +4,14 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const cardErrorBoundaryFr = { - 'card_error_boundary/title': 'Désolé, erreur inattendue :(', - 'card_error_boundary/content': - 'Veuillez recharger, ou fermer et réouvrir cette application, ou contacter le support.', - 'card_error_boundary/expandederrorheader': - "Message d'erreur (et voir plus d'informations dans la console developpeur):", -}; +export const cardErrorBoundaryFr = defineMessages({ + 'card_error_boundary/title': { defaultMessage: 'Désolé, erreur inattendue :(' }, + 'card_error_boundary/content': { + defaultMessage: 'Veuillez recharger, ou fermer et réouvrir cette application, ou contacter le support.', + }, + 'card_error_boundary/expandederrorheader': { + defaultMessage: "Message d'erreur (et voir plus d'informations dans la console développeur):", + }, +}); diff --git a/src/translations/fr/commonButtonFr.ts b/src/translations/fr/commonButtonFr.ts index 47f4a3afd..805d33af8 100644 --- a/src/translations/fr/commonButtonFr.ts +++ b/src/translations/fr/commonButtonFr.ts @@ -4,10 +4,11 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const commonButtonFr = { - cancel: 'Annuler', - validate: 'Valider', - 'button.changeType': 'Modifier', - 'button.changeOperator': 'Modifier', -}; +export const commonButtonFr = defineMessages({ + cancel: { defaultMessage: 'Annuler' }, + validate: { defaultMessage: 'Valider' }, + 'button.changeType': { defaultMessage: 'Modifier' }, + 'button.changeOperator': { defaultMessage: 'Modifier' }, +}); diff --git a/src/translations/fr/componentsFr.ts b/src/translations/fr/componentsFr.ts index f5f303aae..d3fca0162 100644 --- a/src/translations/fr/componentsFr.ts +++ b/src/translations/fr/componentsFr.ts @@ -4,8 +4,9 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const componentsFr = { - notBuiltNodeTooltip: 'Valeur du dernier nœud réalisé de la branche courante', - builtNodeTooltip: 'Valeur courante prenant en compte toutes les modifications réalisées', -}; +export const componentsFr = defineMessages({ + notBuiltNodeTooltip: { defaultMessage: 'Valeur du dernier nœud réalisé de la branche courante' }, + builtNodeTooltip: { defaultMessage: 'Valeur courante prenant en compte toutes les modifications réalisées' }, +}); diff --git a/src/translations/fr/csvFr.ts b/src/translations/fr/csvFr.ts index 07fb2227c..746a4876c 100644 --- a/src/translations/fr/csvFr.ts +++ b/src/translations/fr/csvFr.ts @@ -4,14 +4,19 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const csvFr = { - ImportCSV: 'Import CSV', - noDataInCsvFile: 'Aucune donnée trouvée dans ce fichier', - wrongCsvHeadersError: - 'Les en-têtes du fichier CSV sont incorrects. Utilisez le bouton Générer le squelette CSV pour obtenir le format CSV pris en charge', - keepCSVDataMessage: 'Voulez-vous remplacer la liste existante ou y ajouter les nouvelles données ?', - GenerateCSV: 'Générer le squelette CSV', - UploadCSV: 'Télécharger le CSV', - uploadMessage: ' Aucun fichier sélectionné', -}; +export const csvFr = defineMessages({ + ImportCSV: { defaultMessage: 'Import CSV' }, + noDataInCsvFile: { defaultMessage: 'Aucune donnée trouvée dans ce fichier' }, + wrongCsvHeadersError: { + defaultMessage: + 'Les en-têtes du fichier CSV sont incorrects. Utilisez le bouton Générer le squelette CSV pour obtenir le format CSV pris en charge', + }, + keepCSVDataMessage: { + defaultMessage: 'Voulez-vous remplacer la liste existante ou y ajouter les nouvelles données ?', + }, + GenerateCSV: { defaultMessage: 'Générer le squelette CSV' }, + UploadCSV: { defaultMessage: 'Télécharger le CSV' }, + uploadMessage: { defaultMessage: ' Aucun fichier sélectionné' }, +}); diff --git a/src/translations/fr/descriptionFr.ts b/src/translations/fr/descriptionFr.ts index 411c3f40f..36f1ff9dc 100644 --- a/src/translations/fr/descriptionFr.ts +++ b/src/translations/fr/descriptionFr.ts @@ -4,11 +4,12 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const descriptionFr = { - description: 'Description', - descriptionProperty: 'Description', - descriptionModificationError: 'Erreur lors de la modification de la description', - descriptionLimitError: 'La description dépasse la limite de caractères', - AddDescription: 'Ajouter une description', -}; +export const descriptionFr = defineMessages({ + description: { defaultMessage: 'Description' }, + descriptionProperty: { defaultMessage: 'Description' }, + descriptionModificationError: { defaultMessage: 'Erreur lors de la modification de la description' }, + descriptionLimitError: { defaultMessage: 'La description dépasse la limite de caractères' }, + AddDescription: { defaultMessage: 'Ajouter une description' }, +}); diff --git a/src/translations/fr/directoryItemsInputFr.ts b/src/translations/fr/directoryItemsInputFr.ts index c0785309a..655b73f1a 100644 --- a/src/translations/fr/directoryItemsInputFr.ts +++ b/src/translations/fr/directoryItemsInputFr.ts @@ -4,7 +4,8 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const directoryItemsInputFr = { - 'directory_items_input/ElementAlreadyUsed': 'Cet élément est déjà utilisé', -}; +export const directoryItemsInputFr = defineMessages({ + 'directory_items_input/ElementAlreadyUsed': { defaultMessage: 'Cet élément est déjà utilisé' }, +}); diff --git a/src/translations/fr/elementSearchFr.ts b/src/translations/fr/elementSearchFr.ts index 562725b87..f7d0ef552 100644 --- a/src/translations/fr/elementSearchFr.ts +++ b/src/translations/fr/elementSearchFr.ts @@ -4,8 +4,9 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const elementSearchFr = { - 'element_search/label': 'Rechercher un élément', - 'element_search/noResult': 'Aucun résultat', -}; +export const elementSearchFr = defineMessages({ + 'element_search/label': { defaultMessage: 'Rechercher un élément' }, + 'element_search/noResult': { defaultMessage: 'Aucun résultat' }, +}); diff --git a/src/translations/fr/equipmentSearchFr.ts b/src/translations/fr/equipmentSearchFr.ts index 7df15cea7..1a86cf4f1 100644 --- a/src/translations/fr/equipmentSearchFr.ts +++ b/src/translations/fr/equipmentSearchFr.ts @@ -4,24 +4,25 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const equipmentSearchFr = { - 'equipment_search/label': 'Rechercher un ouvrage', - 'equipment_search/switchTag': 'SWITCH', - 'equipment_search/busbarSectionTag': 'SJB', - 'equipment_search/lineTag': 'LIGNE', - 'equipment_search/2wtTag': 'TRANSFO 2E', - 'equipment_search/3wtTag': 'TRANSFO 3E', - 'equipment_search/generatorTag': 'GROUPE', - 'equipment_search/batteryTag': 'BATTERIE', - 'equipment_search/loadTag': 'CONSO', - 'equipment_search/shuntTag': 'MCS', - 'equipment_search/svcTag': 'CSPR', - 'equipment_search/hvdcLineTag': 'LIGNE HVDC', - 'equipment_search/hvdcLineVscTag': 'LIGNE HVDC (VSC)', - 'equipment_search/hvdcLineLccTag': 'LIGNE HVDC (LCC)', - 'equipment_search/hvdcStationTag': 'STATION HVDC', - 'equipment_search/voltageLevelTag': 'POSTE', - 'equipment_search/substationTag': 'SITE', - 'equipment_search/busTag': 'NOEUD', -}; +export const equipmentSearchFr = defineMessages({ + 'equipment_search/label': { defaultMessage: 'Rechercher un ouvrage' }, + 'equipment_search/switchTag': { defaultMessage: 'SWITCH' }, + 'equipment_search/busbarSectionTag': { defaultMessage: 'SJB' }, + 'equipment_search/lineTag': { defaultMessage: 'LIGNE' }, + 'equipment_search/2wtTag': { defaultMessage: 'TRANSFO 2E' }, + 'equipment_search/3wtTag': { defaultMessage: 'TRANSFO 3E' }, + 'equipment_search/generatorTag': { defaultMessage: 'GROUPE' }, + 'equipment_search/batteryTag': { defaultMessage: 'BATTERIE' }, + 'equipment_search/loadTag': { defaultMessage: 'CONSO' }, + 'equipment_search/shuntTag': { defaultMessage: 'MCS' }, + 'equipment_search/svcTag': { defaultMessage: 'CSPR' }, + 'equipment_search/hvdcLineTag': { defaultMessage: 'LIGNE HVDC' }, + 'equipment_search/hvdcLineVscTag': { defaultMessage: 'LIGNE HVDC (VSC)' }, + 'equipment_search/hvdcLineLccTag': { defaultMessage: 'LIGNE HVDC (LCC)' }, + 'equipment_search/hvdcStationTag': { defaultMessage: 'STATION HVDC' }, + 'equipment_search/voltageLevelTag': { defaultMessage: 'POSTE' }, + 'equipment_search/substationTag': { defaultMessage: 'SITE' }, + 'equipment_search/busTag': { defaultMessage: 'NOEUD' }, +}); diff --git a/src/translations/fr/equipmentsFr.ts b/src/translations/fr/equipmentsFr.ts index 0c50ce6bc..9275a5cd9 100644 --- a/src/translations/fr/equipmentsFr.ts +++ b/src/translations/fr/equipmentsFr.ts @@ -4,24 +4,25 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const equipmentsFr = { - Substations: 'Sites', - VoltageLevels: 'Postes', - Lines: 'Lignes', - TwoWindingsTransformers: 'Transfos à 2 enroulements', - ThreeWindingsTransformers: 'Transfos à 3 enroulements', - Generators: 'Groupes', - Loads: 'Consommations', - Batteries: 'Batteries', - ShuntCompensators: 'Moyens de compensation', - Hydro: 'Hydraulique', - Nuclear: 'Nucléaire', - Wind: 'Eolien', - Thermal: 'Thermique', - Solar: 'Solaire', - Other: 'Autre', - LccConverterStations: 'Stations de conversion LCC', - VscConverterStations: 'Stations de conversion VSC', - StaticVarCompensators: 'CSPR', -}; +export const equipmentsFr = defineMessages({ + Substations: { defaultMessage: 'Sites' }, + VoltageLevels: { defaultMessage: 'Postes' }, + Lines: { defaultMessage: 'Lignes' }, + TwoWindingsTransformers: { defaultMessage: 'Transfos à 2 enroulements' }, + ThreeWindingsTransformers: { defaultMessage: 'Transfos à 3 enroulements' }, + Generators: { defaultMessage: 'Groupes' }, + Loads: { defaultMessage: 'Consommations' }, + Batteries: { defaultMessage: 'Batteries' }, + ShuntCompensators: { defaultMessage: 'Moyens de compensation' }, + Hydro: { defaultMessage: 'Hydraulique' }, + Nuclear: { defaultMessage: 'Nucléaire' }, + Wind: { defaultMessage: 'Éolien' }, + Thermal: { defaultMessage: 'Thermique' }, + Solar: { defaultMessage: 'Solaire' }, + Other: { defaultMessage: 'Autre' }, + LccConverterStations: { defaultMessage: 'Stations de conversion LCC' }, + VscConverterStations: { defaultMessage: 'Stations de conversion VSC' }, + StaticVarCompensators: { defaultMessage: 'CSPR' }, +}); diff --git a/src/translations/fr/external/exportParamsFr.ts b/src/translations/fr/external/exportParamsFr.ts index f3416ae80..4f7e9e616 100644 --- a/src/translations/fr/external/exportParamsFr.ts +++ b/src/translations/fr/external/exportParamsFr.ts @@ -4,145 +4,206 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -export const exportParamsFr = { - 'iidm.export.cgmes.base-name': 'Nom des fichiers', - 'iidm.export.cgmes.base-name.desc': "Nom des fichiers d'export", - 'iidm.export.cgmes.cim-version': 'Version CIM', - 'iidm.export.cgmes.cim-version.desc': 'Version du CIM à exporter', - 'iidm.export.cgmes.cim-version.14': '14', - 'iidm.export.cgmes.cim-version.16': '16', - 'iidm.export.cgmes.cim-version.100': '100', - 'iidm.export.cgmes.export-boundary-power-flows': 'Exporter les flux des terminaux frontières', - 'iidm.export.cgmes.export-boundary-power-flows.desc': - 'Exporter les flux des terminaux frontières dans le fichier SV', - 'iidm.export.cgmes.export-power-flows-for-switches': 'Exporter les flux au niveau des OCs', - 'iidm.export.cgmes.export-power-flows-for-switches.desc': - 'Exporter les flux au niveau des organes de coupures dans le fichier SV', - 'iidm.export.cgmes.naming-strategy': 'Type de conversion utilisé pour créer les identifiants CGMES', - 'iidm.export.cgmes.naming-strategy.desc': 'Type de conversion utilisé pour créer les identifiants CGMES', - 'iidm.export.cgmes.naming-strategy.identity': 'identity', - 'iidm.export.cgmes.naming-strategy.cgmes': 'cgmes', - 'iidm.export.cgmes.naming-strategy.cgmes-fix-all-invalid-ids': 'cgmes-fix-all-invalid-ids', - 'iidm.export.cgmes.profiles': 'Profils', - 'iidm.export.cgmes.profiles.desc': 'Profils à exporter', - 'iidm.export.cgmes.profiles.EQ': 'EQ', - 'iidm.export.cgmes.profiles.TP': 'TP', - 'iidm.export.cgmes.profiles.SSH': 'SSH', - 'iidm.export.cgmes.profiles.SV': 'SV', - 'iidm.export.cgmes.boundary-EQ-identifier': 'Identifiant du fichier de boundary EQ', - 'iidm.export.cgmes.boundary-EQ-identifier.desc': 'Identifiant du fichier EQ décrivant les terminaux frontières', - 'iidm.export.cgmes.boundary-TP-identifier': 'Identifiant du fichier de boundary TP', - 'iidm.export.cgmes.boundary-TP-identifier.desc': - 'Identifiant du fichier TP décrivant la topologie des terminaux frontières', - 'iidm.export.cgmes.modeling-authority-set': 'Définition du ModelingAuthority', - 'iidm.export.cgmes.modeling-authority-set.desc': 'Définition du ModelingAuthority', - 'ucte.export.naming-strategy': 'Type de conversion utilisé pour créer les identifiants UCTE', - 'ucte.export.naming-strategy.desc': 'Type de conversion utilisé pour créer les identifiants UCTE', - 'ucte.export.combine-phase-angle-regulation': 'Combiner les lois de réglage et de déphasage', - 'ucte.export.combine-phase-angle-regulation.desc': 'Combiner les lois de réglage et de déphasage', - 'iidm.export.xml.indent': 'Indentation du fichier exporté', - 'iidm.export.xml.indent.desc': 'Indentation du fichier exporté', - 'iidm.export.xml.with-branch-state-variables': 'Exporter les flux au niveau des quadripôles', - 'iidm.export.xml.with-branch-state-variables.desc': 'Exporter les flux au niveau des quadripôles', - 'iidm.export.xml.only-main-cc': 'Exporter seulement la CC principale', - 'iidm.export.xml.only-main-cc.desc': 'Exporter seulement la composante connexe principale', - 'iidm.export.xml.anonymised': 'Anonymisation du réseau exporté', - 'iidm.export.xml.anonymised.desc': 'Anonymisation du réseau exporté', - 'iidm.export.xml.iidm-version-incompatibility-behavior': "Comportement en cas d'incompatibilité de version IIDM", - 'iidm.export.xml.iidm-version-incompatibility-behavior.desc': - "Comportement en cas d'incompatibilité de version IIDM", - 'iidm.export.xml.iidm-version-incompatibility-behavior.THROW_EXCEPTION': 'Exception', - 'iidm.export.xml.iidm-version-incompatibility-behavior.LOG_ERROR': 'Logs', - 'iidm.export.xml.topology-level': 'Niveau de détail de la topologie', - 'iidm.export.xml.topology-level.desc': 'Niveau de détail de la topologie', - 'iidm.export.xml.topology-level.BUS_BRANCH': 'BUS_BRANCH', - 'iidm.export.xml.topology-level.BUS_BREAKER': 'BUS_BREAKER', - 'iidm.export.xml.topology-level.NODE_BREAKER': 'NODE_BREAKER', - 'iidm.export.xml.throw-exception-if-extension-not-found': "Exception si une extension n'est pas connue", - 'iidm.export.xml.throw-exception-if-extension-not-found.desc': - "Lever une exception si on essaie d'exporter une extension inconnue", - 'iidm.export.xml.extensions': 'Extensions', - 'iidm.export.xml.extensions.selectionDialog.name': 'Sélection des extensions', - 'iidm.export.xml.extensions.desc': 'Exporter avec ces extensions', - 'iidm.export.xml.extensions.activePowerControl': 'Compensation', - 'iidm.export.xml.extensions.baseVoltageMapping': 'Tension nominale', - 'iidm.export.xml.extensions.branchObservability': 'Observabilité des quadripôles', - 'iidm.export.xml.extensions.busbarSectionPosition': 'Position des SJBs', - 'iidm.export.xml.extensions.branchStatus': 'Statut de consignation et de déclenchement (Version IIDM < 1.12)', - 'iidm.export.xml.extensions.cgmesControlAreas': 'Cgmes - zone géographique', - 'iidm.export.xml.extensions.cgmesDanglingLineBoundaryNode': 'Code EIC des lignes frontières (ligne non mergée)', - 'iidm.export.xml.extensions.cgmesLineBoundaryNode': 'Code EIC des lignes frontières (ligne complète)', - 'iidm.export.xml.extensions.cgmesMetadataModels': 'Cgmes - Métadonnées des modèles', - 'iidm.export.xml.extensions.cgmesSshMetadata': 'Cgmes - ssh métadonnées', - 'iidm.export.xml.extensions.cgmesSvMetadata': 'Cgmes - sv métadonnées', - 'iidm.export.xml.extensions.cgmesTapChangers': 'Cgmes - lois de réglage et déphasage', - 'iidm.export.xml.extensions.cimCharacteristics': 'Cgmes - caractéristiques', - 'iidm.export.xml.extensions.coordinatedReactiveControl': 'Contrôle coordonné du réactif', - 'iidm.export.xml.extensions.detail': 'Données détaillées des consommations (fixe | affine)', - 'iidm.export.xml.extensions.discreteMeasurements': 'Télémesures (Régleurs et Déphaseurs)', - 'iidm.export.xml.extensions.entsoeArea': 'Zone Entsoe', - 'iidm.export.xml.extensions.entsoeCategory': 'Catégorie Entsoe des groupes', - 'iidm.export.xml.extensions.generatorActivePowerControl': 'Compensation (Groupes)', - 'iidm.export.xml.extensions.generatorFortescue': 'Données pour les calculs dissymétriques des groupes', - 'iidm.export.xml.extensions.generatorAsymmetrical': 'Données pour les calculs dissymétriques des groupes', - 'iidm.export.xml.extensions.generatorRemoteReactivePowerControl': - 'Régulation à distance de la puissance réactive des groupes', - 'iidm.export.xml.extensions.generatorShortCircuit': 'Données de court-circuit des groupes', - 'iidm.export.xml.extensions.generatorShortCircuits': 'Données de court-circuit des groupes (Version IIDM 1.0)', - 'iidm.export.xml.extensions.hvdcAngleDroopActivePowerControl': 'Emulation AC pour les HVDCs', - 'iidm.export.xml.extensions.hvdcOperatorActivePowerRange': 'Limites de transits des HVDCs', - 'iidm.export.xml.extensions.identifiableShortCircuit': 'Données de court-circuit des postes', - 'iidm.export.xml.extensions.injectionObservability': 'Observabilité des injections', - 'iidm.export.xml.extensions.lineFortescue': 'Données pour les calculs dissymétriques des lignes', - 'iidm.export.xml.extensions.lineAsymmetrical': 'Données pour les calculs dissymétriques des lignes', - 'iidm.export.xml.extensions.linePosition': 'Coordonnées géographiques de lignes', - 'iidm.export.xml.extensions.loadFortescue': 'Données pour les calculs dissymétriques des consommations', - 'iidm.export.xml.extensions.loadAsymmetrical': 'Données pour les calculs dissymétriques des consommations', - 'iidm.export.xml.extensions.measurements': 'Télémesures', - 'iidm.export.xml.extensions.mergedXnode': 'Xnode mergé', - 'iidm.export.xml.extensions.operatingStatus': 'Statut de consignation et de déclenchement', - 'iidm.export.xml.extensions.position': 'Position des départs', - 'iidm.export.xml.extensions.referencePriorities': - 'Indice de priorité des noeuds de référence (Calcul de répartition)', - 'iidm.export.xml.extensions.referenceTerminals': 'Terminaux référence de phase (Calcul de répartition)', - 'iidm.export.xml.extensions.secondaryVoltageControl': 'Réglage secondaire de tension', - 'iidm.export.xml.extensions.slackTerminal': 'Nœud bilan', - 'iidm.export.xml.extensions.standbyAutomaton': 'Automate des CSPRs', - 'iidm.export.xml.extensions.startup': 'Coût de démarrage des groupes', - 'iidm.export.xml.extensions.substationPosition': 'Coordonnées géographiques des sites', - 'iidm.export.xml.extensions.threeWindingsTransformerFortescue': - 'Données pour les calculs dissymétriques des transformateurs à trois enroulements', - 'iidm.export.xml.extensions.threeWindingsTransformerAsymmetrical': - 'Données pour les calculs dissymétriques des transformateurs à trois enroulements', - 'iidm.export.xml.extensions.threeWindingsTransformerPhaseAngleClock': - "Angles de phase entre les enroulements (sous forme d'horloge) pour les transformateurs à trois enroulements", - 'iidm.export.xml.extensions.threeWindingsTransformerToBeEstimated': - 'Estimation des prises des régleurs et des déphaseurs des transformateurs à trois enroulements', - 'iidm.export.xml.extensions.twoWindingsTransformerFortescue': - 'Données pour les calculs dissymétriques des transformateurs à deux enroulements', - 'iidm.export.xml.extensions.twoWindingsTransformerAsymmetrical': - 'Données pour les calculs dissymétriques des transformateurs à deux enroulements', - 'iidm.export.xml.extensions.twoWindingsTransformerPhaseAngleClock': - "Angle de phase entre les enroulements (sous forme d'horloge) pour les transformateurs à deux enroulements", - 'iidm.export.xml.extensions.twoWindingsTransformerToBeEstimated': - 'Estimation des prises des régleurs et des déphaseurs des transformateurs à deux enroulements', - 'iidm.export.xml.extensions.voltageLevelShortCircuits': 'Données de court-circuit des postes (Version IIDM 1.0)', - 'iidm.export.xml.extensions.voltagePerReactivePowerControl': - 'Lien entre la tension de consigne et la puissance réactive en mode réglage de tension (CSPRs)', - 'iidm.export.xml.extensions.voltageRegulation': 'Réglage de tension', - 'iidm.export.xml.sorted': 'Trier les ouvrages dans le fichier', - 'iidm.export.xml.sorted.desc': 'Trier les ouvrages dans le fichier', - 'iidm.export.xml.version': 'Version IIDM', - 'iidm.export.xml.version.desc': 'Version IIDM utilisée pour générer le fichier', - 'iidm.export.xml.version.1.0': '1.0', - 'iidm.export.xml.version.1.1': '1.1', - 'iidm.export.xml.version.1.2': '1.2', - 'iidm.export.xml.version.1.3': '1.3', - 'iidm.export.xml.version.1.4': '1.4', - 'iidm.export.xml.version.1.5': '1.5', - 'iidm.export.xml.version.1.6': '1.6', - 'iidm.export.xml.version.1.7': '1.7', - 'iidm.export.xml.version.1.8': '1.8', - 'iidm.export.xml.version.1.9': '1.9', - 'iidm.export.xml.version.1.10': '1.10', -}; + +import { defineMessages } from '../../utils'; + +export const exportParamsFr = defineMessages({ + 'iidm.export.cgmes.base-name': { defaultMessage: 'Nom des fichiers' }, + 'iidm.export.cgmes.base-name.desc': { defaultMessage: "Nom des fichiers d'export" }, + 'iidm.export.cgmes.cim-version': { defaultMessage: 'Version CIM' }, + 'iidm.export.cgmes.cim-version.desc': { defaultMessage: 'Version du CIM à exporter' }, + 'iidm.export.cgmes.cim-version.14': { defaultMessage: '14' }, + 'iidm.export.cgmes.cim-version.16': { defaultMessage: '16' }, + 'iidm.export.cgmes.cim-version.100': { defaultMessage: '100' }, + 'iidm.export.cgmes.export-boundary-power-flows': { defaultMessage: 'Exporter les flux des terminaux frontières' }, + 'iidm.export.cgmes.export-boundary-power-flows.desc': { + defaultMessage: 'Exporter les flux des terminaux frontières dans le fichier SV', + }, + 'iidm.export.cgmes.export-power-flows-for-switches': { defaultMessage: 'Exporter les flux au niveau des OCs' }, + 'iidm.export.cgmes.export-power-flows-for-switches.desc': { + defaultMessage: 'Exporter les flux au niveau des organes de coupures dans le fichier SV', + }, + 'iidm.export.cgmes.naming-strategy': { + defaultMessage: 'Type de conversion utilisé pour créer les identifiants CGMES', + }, + 'iidm.export.cgmes.naming-strategy.desc': { + defaultMessage: 'Type de conversion utilisé pour créer les identifiants CGMES', + }, + 'iidm.export.cgmes.naming-strategy.identity': { defaultMessage: 'identity' }, + 'iidm.export.cgmes.naming-strategy.cgmes': { defaultMessage: 'cgmes' }, + 'iidm.export.cgmes.naming-strategy.cgmes-fix-all-invalid-ids': { defaultMessage: 'cgmes-fix-all-invalid-ids' }, + 'iidm.export.cgmes.profiles': { defaultMessage: 'Profils' }, + 'iidm.export.cgmes.profiles.desc': { defaultMessage: 'Profils à exporter' }, + 'iidm.export.cgmes.profiles.EQ': { defaultMessage: 'EQ' }, + 'iidm.export.cgmes.profiles.TP': { defaultMessage: 'TP' }, + 'iidm.export.cgmes.profiles.SSH': { defaultMessage: 'SSH' }, + 'iidm.export.cgmes.profiles.SV': { defaultMessage: 'SV' }, + 'iidm.export.cgmes.boundary-EQ-identifier': { defaultMessage: 'Identifiant du fichier de boundary EQ' }, + 'iidm.export.cgmes.boundary-EQ-identifier.desc': { + defaultMessage: 'Identifiant du fichier EQ décrivant les terminaux frontières', + }, + 'iidm.export.cgmes.boundary-TP-identifier': { defaultMessage: 'Identifiant du fichier de boundary TP' }, + 'iidm.export.cgmes.boundary-TP-identifier.desc': { + defaultMessage: 'Identifiant du fichier TP décrivant la topologie des terminaux frontières', + }, + 'iidm.export.cgmes.modeling-authority-set': { defaultMessage: 'Définition du ModelingAuthority' }, + 'iidm.export.cgmes.modeling-authority-set.desc': { defaultMessage: 'Définition du ModelingAuthority' }, + 'ucte.export.naming-strategy': { defaultMessage: 'Type de conversion utilisé pour créer les identifiants UCTE' }, + 'ucte.export.naming-strategy.desc': { + defaultMessage: 'Type de conversion utilisé pour créer les identifiants UCTE', + }, + 'ucte.export.combine-phase-angle-regulation': { defaultMessage: 'Combiner les lois de réglage et de déphasage' }, + 'ucte.export.combine-phase-angle-regulation.desc': { + defaultMessage: 'Combiner les lois de réglage et de déphasage', + }, + 'iidm.export.xml.indent': { defaultMessage: 'Indentation du fichier exporté' }, + 'iidm.export.xml.indent.desc': { defaultMessage: 'Indentation du fichier exporté' }, + 'iidm.export.xml.with-branch-state-variables': { defaultMessage: 'Exporter les flux au niveau des quadripôles' }, + 'iidm.export.xml.with-branch-state-variables.desc': { + defaultMessage: 'Exporter les flux au niveau des quadripôles', + }, + 'iidm.export.xml.only-main-cc': { defaultMessage: 'Exporter seulement la CC principale' }, + 'iidm.export.xml.only-main-cc.desc': { defaultMessage: 'Exporter seulement la composante connexe principale' }, + 'iidm.export.xml.anonymised': { defaultMessage: 'Anonymisation du réseau exporté' }, + 'iidm.export.xml.anonymised.desc': { defaultMessage: 'Anonymisation du réseau exporté' }, + 'iidm.export.xml.iidm-version-incompatibility-behavior': { + defaultMessage: "Comportement en cas d'incompatibilité de version IIDM", + }, + 'iidm.export.xml.iidm-version-incompatibility-behavior.desc': { + defaultMessage: "Comportement en cas d'incompatibilité de version IIDM", + }, + 'iidm.export.xml.iidm-version-incompatibility-behavior.THROW_EXCEPTION': { defaultMessage: 'Exception' }, + 'iidm.export.xml.iidm-version-incompatibility-behavior.LOG_ERROR': { defaultMessage: 'Logs' }, + 'iidm.export.xml.topology-level': { defaultMessage: 'Niveau de détail de la topologie' }, + 'iidm.export.xml.topology-level.desc': { defaultMessage: 'Niveau de détail de la topologie' }, + 'iidm.export.xml.topology-level.BUS_BRANCH': { defaultMessage: 'BUS_BRANCH' }, + 'iidm.export.xml.topology-level.BUS_BREAKER': { defaultMessage: 'BUS_BREAKER' }, + 'iidm.export.xml.topology-level.NODE_BREAKER': { defaultMessage: 'NODE_BREAKER' }, + 'iidm.export.xml.throw-exception-if-extension-not-found': { + defaultMessage: "Exception si une extension n'est pas connue", + }, + 'iidm.export.xml.throw-exception-if-extension-not-found.desc': { + defaultMessage: "Lever une exception si on essaie d'exporter une extension inconnue", + }, + 'iidm.export.xml.extensions': { defaultMessage: 'Extensions' }, + 'iidm.export.xml.extensions.selectionDialog.name': { defaultMessage: 'Sélection des extensions' }, + 'iidm.export.xml.extensions.desc': { defaultMessage: 'Exporter avec ces extensions' }, + 'iidm.export.xml.extensions.activePowerControl': { defaultMessage: 'Compensation' }, + 'iidm.export.xml.extensions.baseVoltageMapping': { defaultMessage: 'Tension nominale' }, + 'iidm.export.xml.extensions.branchObservability': { defaultMessage: 'Observabilité des quadripôles' }, + 'iidm.export.xml.extensions.busbarSectionPosition': { defaultMessage: 'Position des SJBs' }, + 'iidm.export.xml.extensions.branchStatus': { + defaultMessage: 'Statut de consignation et de déclenchement (Version IIDM < 1.12)', + }, + 'iidm.export.xml.extensions.cgmesControlAreas': { defaultMessage: 'Cgmes - zone géographique' }, + 'iidm.export.xml.extensions.cgmesDanglingLineBoundaryNode': { + defaultMessage: 'Code EIC des lignes frontières (ligne non mergée)', + }, + 'iidm.export.xml.extensions.cgmesLineBoundaryNode': { + defaultMessage: 'Code EIC des lignes frontières (ligne complète)', + }, + 'iidm.export.xml.extensions.cgmesMetadataModels': { defaultMessage: 'Cgmes - Métadonnées des modèles' }, + 'iidm.export.xml.extensions.cgmesSshMetadata': { defaultMessage: 'Cgmes - ssh métadonnées' }, + 'iidm.export.xml.extensions.cgmesSvMetadata': { defaultMessage: 'Cgmes - sv métadonnées' }, + 'iidm.export.xml.extensions.cgmesTapChangers': { defaultMessage: 'Cgmes - lois de réglage et déphasage' }, + 'iidm.export.xml.extensions.cimCharacteristics': { defaultMessage: 'Cgmes - caractéristiques' }, + 'iidm.export.xml.extensions.coordinatedReactiveControl': { defaultMessage: 'Contrôle coordonné du réactif' }, + 'iidm.export.xml.extensions.detail': { defaultMessage: 'Données détaillées des consommations (fixe | affine)' }, + 'iidm.export.xml.extensions.discreteMeasurements': { defaultMessage: 'Télémesures (Régleurs et Déphaseurs)' }, + 'iidm.export.xml.extensions.entsoeArea': { defaultMessage: 'Zone Entsoe' }, + 'iidm.export.xml.extensions.entsoeCategory': { defaultMessage: 'Catégorie Entsoe des groupes' }, + 'iidm.export.xml.extensions.generatorActivePowerControl': { defaultMessage: 'Compensation (Groupes)' }, + 'iidm.export.xml.extensions.generatorFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des groupes', + }, + 'iidm.export.xml.extensions.generatorAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des groupes', + }, + 'iidm.export.xml.extensions.generatorRemoteReactivePowerControl': { + defaultMessage: 'Régulation à distance de la puissance réactive des groupes', + }, + 'iidm.export.xml.extensions.generatorShortCircuit': { defaultMessage: 'Données de court-circuit des groupes' }, + 'iidm.export.xml.extensions.generatorShortCircuits': { + defaultMessage: 'Données de court-circuit des groupes (Version IIDM 1.0)', + }, + 'iidm.export.xml.extensions.hvdcAngleDroopActivePowerControl': { defaultMessage: 'Emulation AC pour les HVDCs' }, + 'iidm.export.xml.extensions.hvdcOperatorActivePowerRange': { defaultMessage: 'Limites de transits des HVDCs' }, + 'iidm.export.xml.extensions.identifiableShortCircuit': { defaultMessage: 'Données de court-circuit des postes' }, + 'iidm.export.xml.extensions.injectionObservability': { defaultMessage: 'Observabilité des injections' }, + 'iidm.export.xml.extensions.lineFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des lignes', + }, + 'iidm.export.xml.extensions.lineAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des lignes', + }, + 'iidm.export.xml.extensions.linePosition': { defaultMessage: 'Coordonnées géographiques de lignes' }, + 'iidm.export.xml.extensions.loadFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des consommations', + }, + 'iidm.export.xml.extensions.loadAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des consommations', + }, + 'iidm.export.xml.extensions.measurements': { defaultMessage: 'Télémesures' }, + 'iidm.export.xml.extensions.mergedXnode': { defaultMessage: 'Xnode mergé' }, + 'iidm.export.xml.extensions.operatingStatus': { defaultMessage: 'Statut de consignation et de déclenchement' }, + 'iidm.export.xml.extensions.position': { defaultMessage: 'Position des départs' }, + 'iidm.export.xml.extensions.referencePriorities': { + defaultMessage: 'Indice de priorité des noeuds de référence (Calcul de répartition)', + }, + 'iidm.export.xml.extensions.referenceTerminals': { + defaultMessage: 'Terminaux référence de phase (Calcul de répartition)', + }, + 'iidm.export.xml.extensions.secondaryVoltageControl': { defaultMessage: 'Réglage secondaire de tension' }, + 'iidm.export.xml.extensions.slackTerminal': { defaultMessage: 'Nœud bilan' }, + 'iidm.export.xml.extensions.standbyAutomaton': { defaultMessage: 'Automate des CSPRs' }, + 'iidm.export.xml.extensions.startup': { defaultMessage: 'Coût de démarrage des groupes' }, + 'iidm.export.xml.extensions.substationPosition': { defaultMessage: 'Coordonnées géographiques des sites' }, + 'iidm.export.xml.extensions.threeWindingsTransformerFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des transformateurs à trois enroulements', + }, + 'iidm.export.xml.extensions.threeWindingsTransformerAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des transformateurs à trois enroulements', + }, + 'iidm.export.xml.extensions.threeWindingsTransformerPhaseAngleClock': { + defaultMessage: + "Angles de phase entre les enroulements (sous forme d'horloge) pour les transformateurs à trois enroulements", + }, + 'iidm.export.xml.extensions.threeWindingsTransformerToBeEstimated': { + defaultMessage: 'Estimation des prises des régleurs et des déphaseurs des transformateurs à trois enroulements', + }, + 'iidm.export.xml.extensions.twoWindingsTransformerFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des transformateurs à deux enroulements', + }, + 'iidm.export.xml.extensions.twoWindingsTransformerAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des transformateurs à deux enroulements', + }, + 'iidm.export.xml.extensions.twoWindingsTransformerPhaseAngleClock': { + defaultMessage: + "Angle de phase entre les enroulements (sous forme d'horloge) pour les transformateurs à deux enroulements", + }, + 'iidm.export.xml.extensions.twoWindingsTransformerToBeEstimated': { + defaultMessage: 'Estimation des prises des régleurs et des déphaseurs des transformateurs à deux enroulements', + }, + 'iidm.export.xml.extensions.voltageLevelShortCircuits': { + defaultMessage: 'Données de court-circuit des postes (Version IIDM 1.0)', + }, + 'iidm.export.xml.extensions.voltagePerReactivePowerControl': { + defaultMessage: 'Lien entre la tension de consigne et la puissance réactive en mode réglage de tension (CSPRs)', + }, + 'iidm.export.xml.extensions.voltageRegulation': { defaultMessage: 'Réglage de tension' }, + 'iidm.export.xml.sorted': { defaultMessage: 'Trier les ouvrages dans le fichier' }, + 'iidm.export.xml.sorted.desc': { defaultMessage: 'Trier les ouvrages dans le fichier' }, + 'iidm.export.xml.version': { defaultMessage: 'Version IIDM' }, + 'iidm.export.xml.version.desc': { defaultMessage: 'Version IIDM utilisée pour générer le fichier' }, + 'iidm.export.xml.version.1.0': { defaultMessage: '1.0' }, + 'iidm.export.xml.version.1.1': { defaultMessage: '1.1' }, + 'iidm.export.xml.version.1.2': { defaultMessage: '1.2' }, + 'iidm.export.xml.version.1.3': { defaultMessage: '1.3' }, + 'iidm.export.xml.version.1.4': { defaultMessage: '1.4' }, + 'iidm.export.xml.version.1.5': { defaultMessage: '1.5' }, + 'iidm.export.xml.version.1.6': { defaultMessage: '1.6' }, + 'iidm.export.xml.version.1.7': { defaultMessage: '1.7' }, + 'iidm.export.xml.version.1.8': { defaultMessage: '1.8' }, + 'iidm.export.xml.version.1.9': { defaultMessage: '1.9' }, + 'iidm.export.xml.version.1.10': { defaultMessage: '1.10' }, +}); diff --git a/src/translations/fr/external/importParamsFr.ts b/src/translations/fr/external/importParamsFr.ts index d2b156191..7c519153b 100644 --- a/src/translations/fr/external/importParamsFr.ts +++ b/src/translations/fr/external/importParamsFr.ts @@ -4,138 +4,231 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -export const importParamsFr = { - 'iidm.import.cgmes.allow-unsupported-tap-changers': "Autoriser n'importe quel type de régleur ou déphaseur", - 'iidm.import.cgmes.allow-unsupported-tap-changers.desc': "Autoriser n'importe quel type de régleur ou déphaseur", - 'iidm.import.cgmes.change-sign-for-shunt-reactive-power-flow-initial-state': - "Changement du signe des flux des MCS de l'état initial", - 'iidm.import.cgmes.change-sign-for-shunt-reactive-power-flow-initial-state.desc': - "Changement du signe des flux des MCS de l'état initial", - 'iidm.import.cgmes.convert-boundary': 'Importer les XNodes en tant que site/poste', - 'iidm.import.cgmes.convert-boundary.desc': 'Importer les XNodes en tant que site/poste', - 'iidm.import.cgmes.convert-sv-injections': 'Convertir les injections du fichier SV en conso', - 'iidm.import.cgmes.convert-sv-injections.desc': 'Convertir les injections du fichier SV en conso', - 'iidm.import.cgmes.create-busbar-section-for-every-connectivity-node': 'Créer un SJB pour chaque noeud', - 'iidm.import.cgmes.create-busbar-section-for-every-connectivity-node.desc': 'Créer un SJB pour chaque noeud', - 'iidm.import.cgmes.ensure-id-alias-unicity': "Assurer l'unicité des identifiants et des alias", - 'iidm.import.cgmes.ensure-id-alias-unicity.desc': "Assurer l'unicité des identifiants et des alias", - 'iidm.import.cgmes.naming-strategy': 'Type de nommage utilisé par le fichier de mapping des identifiants', - 'iidm.import.cgmes.naming-strategy.desc': 'Type de nommage utilisé par le fichier de mapping des identifiants', - 'iidm.import.cgmes.naming-strategy.identity': 'identity', - 'iidm.import.cgmes.naming-strategy.cgmes': 'cgmes', - 'iidm.import.cgmes.naming-strategy.cgmes-fix-all-invalid-id': 'cgmes-fix-all-invalid-id', - 'iidm.import.cgmes.import-control-areas': 'Importer les zones géographiques', - 'iidm.import.cgmes.import-control-areas.desc': 'Importer les zones géographiques (Control areas)', - 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions': - 'Profil utilisé pour initialiser les valeurs des sections enclenchés des MCS et les prises courantes des régleurs et déphaseurs', - 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.desc': - 'Profil utilisé pour initialiser les valeurs des sections enclenchés des MCS et les prises courantes des régleurs et déphaseurs', - 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.SV': 'SV', - 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.SSH': 'SSH', - 'iidm.import.cgmes.source-for-iidm-id': 'Identifiants CGMES utilisés pour créer les identifiants IIDM', - 'iidm.import.cgmes.source-for-iidm-id.desc': 'Identifiants CGMES utilisés pour créer les identifiants IIDM', - 'iidm.import.cgmes.source-for-iidm-id.mRID': 'mrID', - 'iidm.import.cgmes.source-for-iidm-id.rdfID': 'rdfID', - 'iidm.import.cgmes.store-cgmes-model-as-network-extension': "Stocker le CGMES initial en tant qu'extension", - 'iidm.import.cgmes.store-cgmes-model-as-network-extension.desc': "Stocker le CGMES initial en tant qu'extension", - 'iidm.import.cgmes.store-cgmes-conversion-context-as-network-extension': - "Stocker le mapping des terminaux CGMES en IIDM en tant qu'extension", - 'iidm.import.cgmes.store-cgmes-conversion-context-as-network-extension.desc': - "Stocker le mapping des terminaux CGMES en IIDM en tant qu'extension", - 'iidm.import.cgmes.create-active-power-control-extension': 'Créer une extension pour la compensation', - 'iidm.import.cgmes.create-active-power-control-extension.desc': 'Créer une extension pour la compensation', - 'iidm.import.cgmes.decode-escaped-identifiers': 'Décoder les caractères spéciaux échappés dans les identifiants', - 'iidm.import.cgmes.decode-escaped-identifiers.desc': - 'Décoder les caractères spéciaux échappés dans les identifiants', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode': - 'Créer des interrupteurs fictifs pour les terminaux déconnectés', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.desc': - 'Définir dans quel cas des interrupteurs fictifs sont créés pour les terminaux déconnectés (uniquement en node-breaker) : toujours, toujours sauf pour les organes de coupure ou jamais', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.ALWAYS': 'Toujours', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.ALWAYS_EXCEPT_SWITCHES': - 'Toujours sauf pour les organes de coupure', - 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.NEVER': 'Jamais', - 'iidm.import.cgmes.post-processors': 'Post-traitements', - 'iidm.import.cgmes.post-processors.desc': 'Post-traitements', - 'iidm.import.cgmes.post-processors.EntsoeCategory': 'EntsoeCategory', - 'iidm.import.cgmes.post-processors.PhaseAngleClock': 'PhaseAngleClock', - 'ucte.import.combine-phase-angle-regulation': 'Combiner les lois de réglage et de déphasage', - 'ucte.import.combine-phase-angle-regulation.desc': 'Combiner les lois de réglage et de déphasage', + +import { defineMessages } from '../../utils'; + +export const importParamsFr = defineMessages({ + 'iidm.import.cgmes.allow-unsupported-tap-changers': { + defaultMessage: "Autoriser n'importe quel type de régleur ou déphaseur", + }, + 'iidm.import.cgmes.allow-unsupported-tap-changers.desc': { + defaultMessage: "Autoriser n'importe quel type de régleur ou déphaseur", + }, + 'iidm.import.cgmes.change-sign-for-shunt-reactive-power-flow-initial-state': { + defaultMessage: "Changement du signe des flux des MCS de l'état initial", + }, + 'iidm.import.cgmes.change-sign-for-shunt-reactive-power-flow-initial-state.desc': { + defaultMessage: "Changement du signe des flux des MCS de l'état initial", + }, + 'iidm.import.cgmes.convert-boundary': { defaultMessage: 'Importer les XNodes en tant que site/poste' }, + 'iidm.import.cgmes.convert-boundary.desc': { defaultMessage: 'Importer les XNodes en tant que site/poste' }, + 'iidm.import.cgmes.convert-sv-injections': { defaultMessage: 'Convertir les injections du fichier SV en conso' }, + 'iidm.import.cgmes.convert-sv-injections.desc': { + defaultMessage: 'Convertir les injections du fichier SV en conso', + }, + 'iidm.import.cgmes.create-busbar-section-for-every-connectivity-node': { + defaultMessage: 'Créer un SJB pour chaque noeud', + }, + 'iidm.import.cgmes.create-busbar-section-for-every-connectivity-node.desc': { + defaultMessage: 'Créer un SJB pour chaque noeud', + }, + 'iidm.import.cgmes.ensure-id-alias-unicity': { defaultMessage: "Assurer l'unicité des identifiants et des alias" }, + 'iidm.import.cgmes.ensure-id-alias-unicity.desc': { + defaultMessage: "Assurer l'unicité des identifiants et des alias", + }, + 'iidm.import.cgmes.naming-strategy': { + defaultMessage: 'Type de nommage utilisé par le fichier de mapping des identifiants', + }, + 'iidm.import.cgmes.naming-strategy.desc': { + defaultMessage: 'Type de nommage utilisé par le fichier de mapping des identifiants', + }, + 'iidm.import.cgmes.naming-strategy.identity': { defaultMessage: 'identity' }, + 'iidm.import.cgmes.naming-strategy.cgmes': { defaultMessage: 'cgmes' }, + 'iidm.import.cgmes.naming-strategy.cgmes-fix-all-invalid-id': { defaultMessage: 'cgmes-fix-all-invalid-id' }, + 'iidm.import.cgmes.import-control-areas': { defaultMessage: 'Importer les zones géographiques' }, + 'iidm.import.cgmes.import-control-areas.desc': { + defaultMessage: 'Importer les zones géographiques (Control areas)', + }, + 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions': { + defaultMessage: + 'Profil utilisé pour initialiser les valeurs des sections enclenchés des MCS et les prises courantes des régleurs et déphaseurs', + }, + 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.desc': { + defaultMessage: + 'Profil utilisé pour initialiser les valeurs des sections enclenchés des MCS et les prises courantes des régleurs et déphaseurs', + }, + 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.SV': { defaultMessage: 'SV' }, + 'iidm.import.cgmes.profile-for-initial-values-shunt-sections-tap-positions.SSH': { defaultMessage: 'SSH' }, + 'iidm.import.cgmes.source-for-iidm-id': { + defaultMessage: 'Identifiants CGMES utilisés pour créer les identifiants IIDM', + }, + 'iidm.import.cgmes.source-for-iidm-id.desc': { + defaultMessage: 'Identifiants CGMES utilisés pour créer les identifiants IIDM', + }, + 'iidm.import.cgmes.source-for-iidm-id.mRID': { defaultMessage: 'mrID' }, + 'iidm.import.cgmes.source-for-iidm-id.rdfID': { defaultMessage: 'rdfID' }, + 'iidm.import.cgmes.store-cgmes-model-as-network-extension': { + defaultMessage: "Stocker le CGMES initial en tant qu'extension", + }, + 'iidm.import.cgmes.store-cgmes-model-as-network-extension.desc': { + defaultMessage: "Stocker le CGMES initial en tant qu'extension", + }, + 'iidm.import.cgmes.store-cgmes-conversion-context-as-network-extension': { + defaultMessage: "Stocker le mapping des terminaux CGMES en IIDM en tant qu'extension", + }, + 'iidm.import.cgmes.store-cgmes-conversion-context-as-network-extension.desc': { + defaultMessage: "Stocker le mapping des terminaux CGMES en IIDM en tant qu'extension", + }, + 'iidm.import.cgmes.create-active-power-control-extension': { + defaultMessage: 'Créer une extension pour la compensation', + }, + 'iidm.import.cgmes.create-active-power-control-extension.desc': { + defaultMessage: 'Créer une extension pour la compensation', + }, + 'iidm.import.cgmes.decode-escaped-identifiers': { + defaultMessage: 'Décoder les caractères spéciaux échappés dans les identifiants', + }, + 'iidm.import.cgmes.decode-escaped-identifiers.desc': { + defaultMessage: 'Décoder les caractères spéciaux échappés dans les identifiants', + }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode': { + defaultMessage: 'Créer des interrupteurs fictifs pour les terminaux déconnectés', + }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.desc': { + defaultMessage: + 'Définir dans quel cas des interrupteurs fictifs sont créés pour les terminaux déconnectés (uniquement en node-breaker) : toujours, toujours sauf pour les organes de coupure ou jamais', + }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.ALWAYS': { + defaultMessage: 'Toujours', + }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.ALWAYS_EXCEPT_SWITCHES': { + defaultMessage: 'Toujours sauf pour les organes de coupure', + }, + 'iidm.import.cgmes.create-fictitious-switches-for-disconnected-terminals-mode.NEVER': { defaultMessage: 'Jamais' }, + 'iidm.import.cgmes.post-processors': { defaultMessage: 'Post-traitements' }, + 'iidm.import.cgmes.post-processors.desc': { defaultMessage: 'Post-traitements' }, + 'iidm.import.cgmes.post-processors.EntsoeCategory': { defaultMessage: 'EntsoeCategory' }, + 'iidm.import.cgmes.post-processors.PhaseAngleClock': { defaultMessage: 'PhaseAngleClock' }, + 'ucte.import.combine-phase-angle-regulation': { defaultMessage: 'Combiner les lois de réglage et de déphasage' }, + 'ucte.import.combine-phase-angle-regulation.desc': { + defaultMessage: 'Combiner les lois de réglage et de déphasage', + }, // IIDM - 'iidm.import.xml.throw-exception-if-extension-not-found': "Exception si une extension n'est pas connue", - 'iidm.import.xml.throw-exception-if-extension-not-found.desc': - "Lever une exception si on essaie d'importer une extension inconnue", - 'iidm.import.xml.extensions': 'Extensions', - 'iidm.import.xml.extensions.selectionDialog.name': 'Sélection des extensions', - 'iidm.import.xml.extensions.desc': 'Importer avec ces extensions', - 'iidm.import.xml.extensions.activePowerControl': 'Compensation', - 'iidm.import.xml.extensions.baseVoltageMapping': 'Tension nominale', - 'iidm.import.xml.extensions.branchObservability': 'Observabilité des quadripôles', - 'iidm.import.xml.extensions.busbarSectionPosition': 'Position des SJBs', - 'iidm.import.xml.extensions.branchStatus': 'Statut de consignation et de déclenchement (Version IIDM < 1.12)', - 'iidm.import.xml.extensions.cgmesControlAreas': 'Cgmes - zone géographique', - 'iidm.import.xml.extensions.cgmesDanglingLineBoundaryNode': 'Code EIC des lignes frontières (ligne non mergée)', - 'iidm.import.xml.extensions.cgmesLineBoundaryNode': 'Code EIC des lignes frontières (ligne complète)', - 'iidm.import.xml.extensions.cgmesMetadataModels': 'Cgmes - Métadonnées des modèles', - 'iidm.import.xml.extensions.cgmesSshMetadata': 'Cgmes - ssh métadonnées', - 'iidm.import.xml.extensions.cgmesSvMetadata': 'Cgmes - sv métadonnées', - 'iidm.import.xml.extensions.cgmesTapChangers': 'Cgmes - lois de réglage et déphasage', - 'iidm.import.xml.extensions.cimCharacteristics': 'Cgmes - caractéristiques', - 'iidm.import.xml.extensions.coordinatedReactiveControl': 'Contrôle coordonné du réactif', - 'iidm.import.xml.extensions.detail': 'Données détaillées des consommations (fixe | affine)', - 'iidm.import.xml.extensions.discreteMeasurements': 'Télémesures (Régleurs et Déphaseurs)', - 'iidm.import.xml.extensions.entsoeArea': 'Zone Entsoe', - 'iidm.import.xml.extensions.entsoeCategory': 'Catégorie Entsoe des groupes', - 'iidm.import.xml.extensions.generatorActivePowerControl': 'Compensation (Groupes)', - 'iidm.import.xml.extensions.generatorAsymmetrical': 'Données pour les calculs dissymétriques des groupes', - 'iidm.import.xml.extensions.generatorRemoteReactivePowerControl': - 'Régulation à distance de la puissance réactive des groupes', - 'iidm.import.xml.extensions.generatorShortCircuit': 'Données de court-circuit des groupes', - 'iidm.import.xml.extensions.generatorShortCircuits': 'Données de court-circuit des groupes (Version IIDM 1.0)', - 'iidm.import.xml.extensions.hvdcAngleDroopActivePowerControl': 'Emulation AC pour les HVDCs', - 'iidm.import.xml.extensions.hvdcOperatorActivePowerRange': 'Limites de transits des HVDCs', - 'iidm.import.xml.extensions.identifiableShortCircuit': 'Données de court-circuit des postes', - 'iidm.import.xml.extensions.injectionObservability': 'Observabilité des injections', - 'iidm.import.xml.extensions.lineAsymmetrical': 'Données pour les calculs dissymétriques des lignes', - 'iidm.import.xml.extensions.linePosition': 'Coordonnées géographiques de lignes', - 'iidm.import.xml.extensions.loadAsymmetrical': 'Données pour les calculs dissymétriques des consommations', - 'iidm.import.xml.extensions.measurements': 'Télémesures', - 'iidm.import.xml.extensions.mergedXnode': 'Xnode mergé', - 'iidm.import.xml.extensions.operatingStatus': 'Statut de consignation et de déclenchement', - 'iidm.import.xml.extensions.position': 'Position des départs', - 'iidm.import.xml.extensions.referencePriorities': - 'Indice de priorité des noeuds de référence (Calcul de répartition)', - 'iidm.import.xml.extensions.referenceTerminals': 'Terminaux référence de phase (Calcul de répartition)', - 'iidm.import.xml.extensions.secondaryVoltageControl': 'Réglage secondaire de tension', - 'iidm.import.xml.extensions.slackTerminal': 'Noeud bilan', - 'iidm.import.xml.extensions.standbyAutomaton': 'Automate des CSPRs', - 'iidm.import.xml.extensions.startup': 'Coût de démarrage des groupes', - 'iidm.import.xml.extensions.substationPosition': 'Coordonnées géographiques des sites', - 'iidm.import.xml.extensions.threeWindingsTransformerAsymmetrical': - 'Données pour les calculs dissymétriques des transformateurs à trois enroulements', - 'iidm.import.xml.extensions.threeWindingsTransformerPhaseAngleClock': - "Angles de phase entre les enroulements (sous forme d'horloge) pour les transformateurs à trois enroulements", - 'iidm.import.xml.extensions.threeWindingsTransformerToBeEstimated': - 'Estimation des prises des régleurs et des déphaseurs des transformateurs à trois enroulements', - 'iidm.import.xml.extensions.twoWindingsTransformerAsymmetrical': - 'Données pour les calculs dissymétriques des transformateurs à deux enroulements', - 'iidm.import.xml.extensions.twoWindingsTransformerPhaseAngleClock': - "Angle de phase entre les enroulements (sous forme d'horloge) pour les transformateurs à deux enroulements", - 'iidm.import.xml.extensions.twoWindingsTransformerToBeEstimated': - 'Estimation des prises des régleurs et des déphaseurs des transformateurs à deux enroulements', - 'iidm.import.xml.extensions.voltageLevelShortCircuits': 'Données de court-circuit des postes (Version IIDM 1.0)', - 'iidm.import.xml.extensions.voltagePerReactivePowerControl': 'Contrôle de la tension par le réactif', - 'iidm.import.xml.extensions.voltageRegulation': 'Réglage de tension', - 'iidm.import.xml.extensions.xnode': 'Code Xnode', + 'iidm.import.xml.throw-exception-if-extension-not-found': { + defaultMessage: "Exception si une extension n'est pas connue", + }, + 'iidm.import.xml.throw-exception-if-extension-not-found.desc': { + defaultMessage: "Lever une exception si on essaie d'importer une extension inconnue", + }, + 'iidm.import.xml.extensions': { defaultMessage: 'Extensions' }, + 'iidm.import.xml.extensions.selectionDialog.name': { defaultMessage: 'Sélection des extensions' }, + 'iidm.import.xml.extensions.desc': { defaultMessage: 'Importer avec ces extensions' }, + 'iidm.import.xml.extensions.activePowerControl': { defaultMessage: 'Compensation' }, + 'iidm.import.xml.extensions.baseVoltageMapping': { defaultMessage: 'Tension nominale' }, + 'iidm.import.xml.extensions.branchObservability': { defaultMessage: 'Observabilité des quadripôles' }, + 'iidm.import.xml.extensions.busbarSectionPosition': { defaultMessage: 'Position des SJBs' }, + 'iidm.import.xml.extensions.branchStatus': { + defaultMessage: 'Statut de consignation et de déclenchement (Version IIDM < 1.12)', + }, + 'iidm.import.xml.extensions.cgmesControlAreas': { defaultMessage: 'Cgmes - zone géographique' }, + 'iidm.import.xml.extensions.cgmesDanglingLineBoundaryNode': { + defaultMessage: 'Code EIC des lignes frontières (ligne non mergée)', + }, + 'iidm.import.xml.extensions.cgmesLineBoundaryNode': { + defaultMessage: 'Code EIC des lignes frontières (ligne complète)', + }, + 'iidm.import.xml.extensions.cgmesMetadataModels': { defaultMessage: 'Cgmes - Métadonnées des modèles' }, + 'iidm.import.xml.extensions.cgmesSshMetadata': { defaultMessage: 'Cgmes - ssh métadonnées' }, + 'iidm.import.xml.extensions.cgmesSvMetadata': { defaultMessage: 'Cgmes - sv métadonnées' }, + 'iidm.import.xml.extensions.cgmesTapChangers': { defaultMessage: 'Cgmes - lois de réglage et déphasage' }, + 'iidm.import.xml.extensions.cimCharacteristics': { defaultMessage: 'Cgmes - caractéristiques' }, + 'iidm.import.xml.extensions.coordinatedReactiveControl': { defaultMessage: 'Contrôle coordonné du réactif' }, + 'iidm.import.xml.extensions.detail': { defaultMessage: 'Données détaillées des consommations (fixe | affine)' }, + 'iidm.import.xml.extensions.discreteMeasurements': { defaultMessage: 'Télémesures (Régleurs et Déphaseurs)' }, + 'iidm.import.xml.extensions.entsoeArea': { defaultMessage: 'Zone Entsoe' }, + 'iidm.import.xml.extensions.entsoeCategory': { defaultMessage: 'Catégorie Entsoe des groupes' }, + 'iidm.import.xml.extensions.generatorActivePowerControl': { defaultMessage: 'Compensation (Groupes)' }, + 'iidm.import.xml.extensions.generatorAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des groupes', + }, + 'iidm.import.xml.extensions.generatorRemoteReactivePowerControl': { + defaultMessage: 'Régulation à distance de la puissance réactive des groupes', + }, + 'iidm.import.xml.extensions.generatorShortCircuit': { defaultMessage: 'Données de court-circuit des groupes' }, + 'iidm.import.xml.extensions.generatorShortCircuits': { + defaultMessage: 'Données de court-circuit des groupes (Version IIDM 1.0)', + }, + 'iidm.import.xml.extensions.hvdcAngleDroopActivePowerControl': { defaultMessage: 'Emulation AC pour les HVDCs' }, + 'iidm.import.xml.extensions.hvdcOperatorActivePowerRange': { defaultMessage: 'Limites de transits des HVDCs' }, + 'iidm.import.xml.extensions.identifiableShortCircuit': { defaultMessage: 'Données de court-circuit des postes' }, + 'iidm.import.xml.extensions.injectionObservability': { defaultMessage: 'Observabilité des injections' }, + 'iidm.import.xml.extensions.lineAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des lignes', + }, + 'iidm.import.xml.extensions.linePosition': { defaultMessage: 'Coordonnées géographiques de lignes' }, + 'iidm.import.xml.extensions.loadAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des consommations', + }, + 'iidm.import.xml.extensions.measurements': { defaultMessage: 'Télémesures' }, + 'iidm.import.xml.extensions.mergedXnode': { defaultMessage: 'Xnode mergé' }, + 'iidm.import.xml.extensions.operatingStatus': { defaultMessage: 'Statut de consignation et de déclenchement' }, + 'iidm.import.xml.extensions.position': { defaultMessage: 'Position des départs' }, + 'iidm.import.xml.extensions.referencePriorities': { + defaultMessage: 'Indice de priorité des noeuds de référence (Calcul de répartition)', + }, + 'iidm.import.xml.extensions.referenceTerminals': { + defaultMessage: 'Terminaux référence de phase (Calcul de répartition)', + }, + 'iidm.import.xml.extensions.secondaryVoltageControl': { defaultMessage: 'Réglage secondaire de tension' }, + 'iidm.import.xml.extensions.slackTerminal': { defaultMessage: 'Noeud bilan' }, + 'iidm.import.xml.extensions.standbyAutomaton': { defaultMessage: 'Automate des CSPRs' }, + 'iidm.import.xml.extensions.startup': { defaultMessage: 'Coût de démarrage des groupes' }, + 'iidm.import.xml.extensions.substationPosition': { defaultMessage: 'Coordonnées géographiques des sites' }, + 'iidm.import.xml.extensions.threeWindingsTransformerAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des transformateurs à trois enroulements', + }, + 'iidm.import.xml.extensions.threeWindingsTransformerPhaseAngleClock': { + defaultMessage: + "Angles de phase entre les enroulements (sous forme d'horloge) pour les transformateurs à trois enroulements", + }, + 'iidm.import.xml.extensions.threeWindingsTransformerToBeEstimated': { + defaultMessage: 'Estimation des prises des régleurs et des déphaseurs des transformateurs à trois enroulements', + }, + 'iidm.import.xml.extensions.twoWindingsTransformerAsymmetrical': { + defaultMessage: 'Données pour les calculs dissymétriques des transformateurs à deux enroulements', + }, + 'iidm.import.xml.extensions.twoWindingsTransformerPhaseAngleClock': { + defaultMessage: + "Angle de phase entre les enroulements (sous forme d'horloge) pour les transformateurs à deux enroulements", + }, + 'iidm.import.xml.extensions.twoWindingsTransformerToBeEstimated': { + defaultMessage: 'Estimation des prises des régleurs et des déphaseurs des transformateurs à deux enroulements', + }, + 'iidm.import.xml.extensions.voltageLevelShortCircuits': { + defaultMessage: 'Données de court-circuit des postes (Version IIDM 1.0)', + }, + 'iidm.import.xml.extensions.voltagePerReactivePowerControl': { + defaultMessage: 'Contrôle de la tension par le réactif', + }, + 'iidm.import.xml.extensions.voltageRegulation': { defaultMessage: 'Réglage de tension' }, + 'iidm.import.xml.extensions.xnode': { defaultMessage: 'Code Xnode' }, // to remove after powsybl september release - 'iidm.import.xml.extensions.generatorFortescue': 'Données pour les calculs dissymétriques des groupes', - 'iidm.import.xml.extensions.lineFortescue': 'Données pour les calculs dissymétriques des lignes', - 'iidm.import.xml.extensions.loadFortescue': 'Données pour les calculs dissymétriques des consommations', - 'iidm.import.xml.extensions.threeWindingsTransformerFortescue': - 'Données pour les calculs dissymétriques des transformateurs à trois enroulements', - 'iidm.import.xml.extensions.twoWindingsTransformerFortescue': - 'Données pour les calculs dissymétriques des transformateurs à deux enroulements', + 'iidm.import.xml.extensions.generatorFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des groupes', + }, + 'iidm.import.xml.extensions.lineFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des lignes', + }, + 'iidm.import.xml.extensions.loadFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des consommations', + }, + 'iidm.import.xml.extensions.threeWindingsTransformerFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des transformateurs à trois enroulements', + }, + 'iidm.import.xml.extensions.twoWindingsTransformerFortescue': { + defaultMessage: 'Données pour les calculs dissymétriques des transformateurs à deux enroulements', + }, // end to remove -}; +}); diff --git a/src/translations/fr/filterExpertFr.ts b/src/translations/fr/filterExpertFr.ts index 9086b8213..965f59556 100644 --- a/src/translations/fr/filterExpertFr.ts +++ b/src/translations/fr/filterExpertFr.ts @@ -4,189 +4,192 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const filterExpertFr = { - id: 'ID', - name: 'Nom', - energySource: "Source d'énergie", - country: 'Pays', - voltageRegulatorOn: 'Réglage de tension', - PlannedActivePowerSetPoint: 'Puissance imposée', - minP: 'Puissance active min', - maxP: 'Puissance active max', - targetP: 'Consigne puissance active', - targetV: 'Consigne tension', - targetQ: 'Consigne puissance réactive', - connected: 'Connecté', - maximumSectionCount: 'Nombre de gradins', - sectionCount: 'Gradin courant', - shuntCompensatorType: 'Type', - Capacitor: 'Condensateur', - Reactor: 'Réactance', - maxQAtNominalV: 'Q installée à tension nominale', - SwitchedOnMaxQAtNominalV: 'Q enclenchée à tension nominale', - maxSusceptance: 'Susceptance installée', - SwitchedOnMaxSusceptance: 'Susceptance enclenchée', - ratedS: 'Puissance nominale', - ratedS1: 'Puissance nominale côté 1', - ratedS2: 'Puissance nominale côté 2', - ratedS3: 'Puissance nominale côté 3', - marginalCost: 'Coût', - plannedOutageRate: 'Indisponibilité programmée', - forcedOutageRate: 'Indisponibilité fortuite', - vlId: 'ID de poste', - p0: 'P constant', - q0: 'Q constant', - loadTapChangingCapabilities: 'Régleur en charge', - loadTapChangingCapabilities1: 'Régleur 1 en charge', - loadTapChangingCapabilities2: 'Régleur 2 en charge', - loadTapChangingCapabilities3: 'Régleur 3 en charge', - ratioTargetV: 'Tension de consigne du régleur', - ratioTargetV1: 'Tension de consigne du régleur 1', - ratioTargetV2: 'Tension de consigne du régleur 2', - ratioTargetV3: 'Tension de consigne du régleur 3', - magnetizingConductance: 'Conductance magnétisante', - magnetizingConductance1: 'Conductance magnétisante côté 1', - magnetizingConductance2: 'Conductance magnétisante côté 2', - magnetizingConductance3: 'Conductance magnétisante côté 3', - magnetizingSusceptance: 'Susceptance magnétisante', - magnetizingSusceptance1: 'Susceptance magnétisante côté 1', - magnetizingSusceptance2: 'Susceptance magnétisante côté 2', - magnetizingSusceptance3: 'Susceptance magnétisante côté 3', - vlNominalVoltage: 'Tension nominale poste', - lowVoltageLimit: 'Limite tension basse', - highVoltageLimit: 'Limite tension haute', - selectFilterDialogTitle: 'Choisir un filtre', - filter: 'Filtre', - loadType: 'Type', - Undefined: 'Non défini', - Auxiliary: 'Auxiliaire', - Fictitious: 'Fictif', - hasRatioTapChanger: 'Régleur existe', - hasRatioTapChanger1: 'Régleur 1 existe', - hasRatioTapChanger2: 'Régleur 2 existe', - hasRatioTapChanger3: 'Régleur 3 existe', - hasPhaseTapChanger: 'Déphaseur existe', - hasPhaseTapChanger1: 'Déphaseur 1 existe', - hasPhaseTapChanger2: 'Déphaseur 2 existe', - hasPhaseTapChanger3: 'Déphaseur 3 existe', - Voltage: 'Tension', - ReactivePower: 'Puissance réactive', - VoltageRegulation: 'Réglage tension', - FixedRatio: 'Rapport fixe', - CurrentLimiter: 'Limitation de courant', - ActivePowerControl: 'Suivi de transit', - FixedTap: 'Déphasage constant', - ratioRegulationMode: 'Mode de réglage du régleur', - ratioRegulationMode1: 'Mode de réglage du régleur 1', - ratioRegulationMode2: 'Mode de réglage du régleur 2', - ratioRegulationMode3: 'Mode de réglage du régleur 3', - phaseRegulationMode: 'Mode de réglage du déphaseur', - phaseRegulationMode1: 'Mode de réglage du déphaseur 1', - phaseRegulationMode2: 'Mode de réglage du déphaseur 2', - phaseRegulationMode3: 'Mode de réglage du déphaseur 3', - phaseRegulationValue: 'Consigne de transit ou du courant du déphaseur', - phaseRegulationValue1: 'Consigne de transit ou du courant du déphaseur 1', - phaseRegulationValue2: 'Consigne de transit ou du courant du déphaseur 2', - phaseRegulationValue3: 'Consigne de transit ou du courant du déphaseur 3', - property: 'Propriété', - substationProperty: 'Propriété site', - substationProperty1: 'Propriété site 1', - substationProperty2: 'Propriété site 2', - substationProperty1Twt: 'Propriété site 1', - substationProperty2Twt: 'Propriété site 2', - ratedVoltage1KV: "Tension d'enroulement 1", - ratedVoltage2KV: "Tension d'enroulement 2", - ratedVoltage0KVTwt: "Tension d'enroulement 0", - ratedVoltage1KVTwt: "Tension d'enroulement 1", - ratedVoltage2KVTwt: "Tension d'enroulement 2", - ratedVoltage3KVTwt: "Tension d'enroulement 3", - nominalVoltage1: 'Tension nominale 1', - nominalVoltage2: 'Tension nominale 2', - nominalVoltage3: 'Tension nominale 3', - voltageLevelId1: 'ID Poste 1', - voltageLevelId2: 'ID Poste 2', - voltageLevelId1Twt: 'ID Poste 1', - voltageLevelId2Twt: 'ID Poste 2', - voltageLevelId3Twt: 'ID Poste 3', - terminal1Connected: 'Connecté 1', - terminal2Connected: 'Connecté 2', - terminal1ConnectedTwt: 'Connecté 1', - terminal2ConnectedTwt: 'Connecté 2', - terminal3ConnectedTwt: 'Connecté 3', - nominalVoltage1KV: 'Tension nominale 1', - nominalVoltage2KV: 'Tension nominale 2', - nominalVoltage1KVTwt: 'Tension nominale 1', - nominalVoltage2KVTwt: 'Tension nominale 2', - nominalVoltage3KVTwt: 'Tension nominale 3', - voltageLevelProperty: 'Propriété poste', - voltageLevelProperty1: 'Propriété poste 1', - voltageLevelProperty2: 'Propriété poste 2', - voltageLevelProperty1Twt: 'Propriété poste 1', - voltageLevelProperty2Twt: 'Propriété poste 2', - voltageLevelProperty3Twt: 'Propriété poste 3', - 'maxQAtNominalV.svar': 'Q max à tension nominale', - 'minQAtNominalV.svar': 'Q min à tension nominale', - 'fixQAtNominalV.svar': 'Q fixe à tension nominale', - 'maxSusceptance.svar': 'Susceptance max', - 'minSusceptance.svar': 'Susceptance min', - regulationMode: 'Mode de réglage', - 'regulationMode.off': 'Arrêt', - 'regulationMode.voltage': 'Réglage de tension', - 'regulationMode.reactivePower': 'Réglage du réactif', - voltageSetPoint: 'Tension', - activePowerSetPoint: 'Consigne de puissance active', - reactivePowerSetPoint: 'Consigne de puissance réactive', - remoteRegulatedTerminal: 'Terminal distant réglé', - regulatingTerminalVLId: 'ID de poste', - regulatingTerminalConnectableId: "ID d'ouvrage", - regulationType: 'Type de réglage', - 'regulationType.distant': 'Réglage distant', - 'regulationType.local': 'Réglage local', - automate: 'Automate', - lowVoltageSetPoint: 'U consigne bas', - highVoltageSetPoint: 'U consigne haut', - lowVoltageThreshold: 'U activation bas', - highVoltageThreshold: 'U activation haut', - susceptanceFix: 'Susceptance fixe', - paired: 'Appareillé', - converterStationId1: 'ID de la station de conversion 1', - converterStationId2: 'ID de la station de conversion 2', - convertersMode: 'Mode de conversion', - side1RectifierSide2Inverter: 'Flux (1->2)', - side1InverterSide2Rectifier: 'Flux (2->1)', - dcNominalVoltage: 'Tension nominale DC', - converterStationNominalVoltage1: 'Tension nominale de la station de conversion 1', - converterStationNominalVoltage2: 'Tension nominale de la station de conversion 2', - country1: 'Pays 1', - country2: 'Pays 2', - seriesResistance: 'Résistance série', - seriesResistance1: 'Résistance série 1', - seriesResistance2: 'Résistance série 2', - seriesResistance3: 'Résistance série 3', - seriesReactance: 'Réactance série', - seriesReactance1: 'Réactance série 1', - seriesReactance2: 'Réactance série 2', - seriesReactance3: 'Réactance série 3', - shuntConductance: 'Conductance parallèle', - shuntSusceptance: 'Susceptance parallèle', - shuntConductance1: 'Conductance parallèle 1', - shuntSusceptance1: 'Susceptance parallèle 1', - shuntConductance2: 'Conductance parallèle 2', - shuntSusceptance2: 'Susceptance parallèle 2', - pairingKey: 'Xnode', - tieLineId: "ID de l'interconnexion", - cannotRetrieveFilter: "Erreur d'accès au filtre : ", - equality: '=', - notEquality: '!=', - greaterThan: '>', - greaterOrEqual: '>=', - lessThan: '<', - lessOrEqual: '<=', - YupNotTypeNumber: "Ce champ n'accepte que des valeurs numériques", - YupNotTypeDefault: "La valeur du champ n'est pas au bon format", - changeOperatorMessage: "L'opérateur sera modifié et s'appliquera sur tous les critères déjà créés dans le groupe.", - lowShortCircuitCurrentLimit: 'Limite ICC min', - highShortCircuitCurrentLimit: 'Limite ICC max', - valuesList: 'Liste de valeurs', -}; +export const filterExpertFr = defineMessages({ + id: { defaultMessage: 'ID' }, + name: { defaultMessage: 'Nom' }, + energySource: { defaultMessage: "Source d'énergie" }, + country: { defaultMessage: 'Pays' }, + voltageRegulatorOn: { defaultMessage: 'Réglage de tension' }, + PlannedActivePowerSetPoint: { defaultMessage: 'Puissance imposée' }, + minP: { defaultMessage: 'Puissance active min' }, + maxP: { defaultMessage: 'Puissance active max' }, + targetP: { defaultMessage: 'Consigne puissance active' }, + targetV: { defaultMessage: 'Consigne tension' }, + targetQ: { defaultMessage: 'Consigne puissance réactive' }, + connected: { defaultMessage: 'Connecté' }, + maximumSectionCount: { defaultMessage: 'Nombre de gradins' }, + sectionCount: { defaultMessage: 'Gradin courant' }, + shuntCompensatorType: { defaultMessage: 'Type' }, + Capacitor: { defaultMessage: 'Condensateur' }, + Reactor: { defaultMessage: 'Réactance' }, + maxQAtNominalV: { defaultMessage: 'Q installée à tension nominale' }, + SwitchedOnMaxQAtNominalV: { defaultMessage: 'Q enclenchée à tension nominale' }, + maxSusceptance: { defaultMessage: 'Susceptance installée' }, + SwitchedOnMaxSusceptance: { defaultMessage: 'Susceptance enclenchée' }, + ratedS: { defaultMessage: 'Puissance nominale' }, + ratedS1: { defaultMessage: 'Puissance nominale côté 1' }, + ratedS2: { defaultMessage: 'Puissance nominale côté 2' }, + ratedS3: { defaultMessage: 'Puissance nominale côté 3' }, + marginalCost: { defaultMessage: 'Coût' }, + plannedOutageRate: { defaultMessage: 'Indisponibilité programmée' }, + forcedOutageRate: { defaultMessage: 'Indisponibilité fortuite' }, + vlId: { defaultMessage: 'ID de poste' }, + p0: { defaultMessage: 'P constant' }, + q0: { defaultMessage: 'Q constant' }, + loadTapChangingCapabilities: { defaultMessage: 'Régleur en charge' }, + loadTapChangingCapabilities1: { defaultMessage: 'Régleur 1 en charge' }, + loadTapChangingCapabilities2: { defaultMessage: 'Régleur 2 en charge' }, + loadTapChangingCapabilities3: { defaultMessage: 'Régleur 3 en charge' }, + ratioTargetV: { defaultMessage: 'Tension de consigne du régleur' }, + ratioTargetV1: { defaultMessage: 'Tension de consigne du régleur 1' }, + ratioTargetV2: { defaultMessage: 'Tension de consigne du régleur 2' }, + ratioTargetV3: { defaultMessage: 'Tension de consigne du régleur 3' }, + magnetizingConductance: { defaultMessage: 'Conductance magnétisante' }, + magnetizingConductance1: { defaultMessage: 'Conductance magnétisante côté 1' }, + magnetizingConductance2: { defaultMessage: 'Conductance magnétisante côté 2' }, + magnetizingConductance3: { defaultMessage: 'Conductance magnétisante côté 3' }, + magnetizingSusceptance: { defaultMessage: 'Susceptance magnétisante' }, + magnetizingSusceptance1: { defaultMessage: 'Susceptance magnétisante côté 1' }, + magnetizingSusceptance2: { defaultMessage: 'Susceptance magnétisante côté 2' }, + magnetizingSusceptance3: { defaultMessage: 'Susceptance magnétisante côté 3' }, + vlNominalVoltage: { defaultMessage: 'Tension nominale poste' }, + lowVoltageLimit: { defaultMessage: 'Limite tension basse' }, + highVoltageLimit: { defaultMessage: 'Limite tension haute' }, + selectFilterDialogTitle: { defaultMessage: 'Choisir un filtre' }, + filter: { defaultMessage: 'Filtre' }, + loadType: { defaultMessage: 'Type' }, + Undefined: { defaultMessage: 'Non défini' }, + Auxiliary: { defaultMessage: 'Auxiliaire' }, + Fictitious: { defaultMessage: 'Fictif' }, + hasRatioTapChanger: { defaultMessage: 'Régleur existe' }, + hasRatioTapChanger1: { defaultMessage: 'Régleur 1 existe' }, + hasRatioTapChanger2: { defaultMessage: 'Régleur 2 existe' }, + hasRatioTapChanger3: { defaultMessage: 'Régleur 3 existe' }, + hasPhaseTapChanger: { defaultMessage: 'Déphaseur existe' }, + hasPhaseTapChanger1: { defaultMessage: 'Déphaseur 1 existe' }, + hasPhaseTapChanger2: { defaultMessage: 'Déphaseur 2 existe' }, + hasPhaseTapChanger3: { defaultMessage: 'Déphaseur 3 existe' }, + Voltage: { defaultMessage: 'Tension' }, + ReactivePower: { defaultMessage: 'Puissance réactive' }, + VoltageRegulation: { defaultMessage: 'Réglage tension' }, + FixedRatio: { defaultMessage: 'Rapport fixe' }, + CurrentLimiter: { defaultMessage: 'Limitation de courant' }, + ActivePowerControl: { defaultMessage: 'Suivi de transit' }, + FixedTap: { defaultMessage: 'Déphasage constant' }, + ratioRegulationMode: { defaultMessage: 'Mode de réglage du régleur' }, + ratioRegulationMode1: { defaultMessage: 'Mode de réglage du régleur 1' }, + ratioRegulationMode2: { defaultMessage: 'Mode de réglage du régleur 2' }, + ratioRegulationMode3: { defaultMessage: 'Mode de réglage du régleur 3' }, + phaseRegulationMode: { defaultMessage: 'Mode de réglage du déphaseur' }, + phaseRegulationMode1: { defaultMessage: 'Mode de réglage du déphaseur 1' }, + phaseRegulationMode2: { defaultMessage: 'Mode de réglage du déphaseur 2' }, + phaseRegulationMode3: { defaultMessage: 'Mode de réglage du déphaseur 3' }, + phaseRegulationValue: { defaultMessage: 'Consigne de transit ou du courant du déphaseur' }, + phaseRegulationValue1: { defaultMessage: 'Consigne de transit ou du courant du déphaseur 1' }, + phaseRegulationValue2: { defaultMessage: 'Consigne de transit ou du courant du déphaseur 2' }, + phaseRegulationValue3: { defaultMessage: 'Consigne de transit ou du courant du déphaseur 3' }, + property: { defaultMessage: 'Propriété' }, + substationProperty: { defaultMessage: 'Propriété site' }, + substationProperty1: { defaultMessage: 'Propriété site 1' }, + substationProperty2: { defaultMessage: 'Propriété site 2' }, + substationProperty1Twt: { defaultMessage: 'Propriété site 1' }, + substationProperty2Twt: { defaultMessage: 'Propriété site 2' }, + ratedVoltage1KV: { defaultMessage: "Tension d'enroulement 1" }, + ratedVoltage2KV: { defaultMessage: "Tension d'enroulement 2" }, + ratedVoltage0KVTwt: { defaultMessage: "Tension d'enroulement 0" }, + ratedVoltage1KVTwt: { defaultMessage: "Tension d'enroulement 1" }, + ratedVoltage2KVTwt: { defaultMessage: "Tension d'enroulement 2" }, + ratedVoltage3KVTwt: { defaultMessage: "Tension d'enroulement 3" }, + nominalVoltage1: { defaultMessage: 'Tension nominale 1' }, + nominalVoltage2: { defaultMessage: 'Tension nominale 2' }, + nominalVoltage3: { defaultMessage: 'Tension nominale 3' }, + voltageLevelId1: { defaultMessage: 'ID Poste 1' }, + voltageLevelId2: { defaultMessage: 'ID Poste 2' }, + voltageLevelId1Twt: { defaultMessage: 'ID Poste 1' }, + voltageLevelId2Twt: { defaultMessage: 'ID Poste 2' }, + voltageLevelId3Twt: { defaultMessage: 'ID Poste 3' }, + terminal1Connected: { defaultMessage: 'Connecté 1' }, + terminal2Connected: { defaultMessage: 'Connecté 2' }, + terminal1ConnectedTwt: { defaultMessage: 'Connecté 1' }, + terminal2ConnectedTwt: { defaultMessage: 'Connecté 2' }, + terminal3ConnectedTwt: { defaultMessage: 'Connecté 3' }, + nominalVoltage1KV: { defaultMessage: 'Tension nominale 1' }, + nominalVoltage2KV: { defaultMessage: 'Tension nominale 2' }, + nominalVoltage1KVTwt: { defaultMessage: 'Tension nominale 1' }, + nominalVoltage2KVTwt: { defaultMessage: 'Tension nominale 2' }, + nominalVoltage3KVTwt: { defaultMessage: 'Tension nominale 3' }, + voltageLevelProperty: { defaultMessage: 'Propriété poste' }, + voltageLevelProperty1: { defaultMessage: 'Propriété poste 1' }, + voltageLevelProperty2: { defaultMessage: 'Propriété poste 2' }, + voltageLevelProperty1Twt: { defaultMessage: 'Propriété poste 1' }, + voltageLevelProperty2Twt: { defaultMessage: 'Propriété poste 2' }, + voltageLevelProperty3Twt: { defaultMessage: 'Propriété poste 3' }, + 'maxQAtNominalV.svar': { defaultMessage: 'Q max à tension nominale' }, + 'minQAtNominalV.svar': { defaultMessage: 'Q min à tension nominale' }, + 'fixQAtNominalV.svar': { defaultMessage: 'Q fixe à tension nominale' }, + 'maxSusceptance.svar': { defaultMessage: 'Susceptance max' }, + 'minSusceptance.svar': { defaultMessage: 'Susceptance min' }, + regulationMode: { defaultMessage: 'Mode de réglage' }, + 'regulationMode.off': { defaultMessage: 'Arrêt' }, + 'regulationMode.voltage': { defaultMessage: 'Réglage de tension' }, + 'regulationMode.reactivePower': { defaultMessage: 'Réglage du réactif' }, + voltageSetPoint: { defaultMessage: 'Tension' }, + activePowerSetPoint: { defaultMessage: 'Consigne de puissance active' }, + reactivePowerSetPoint: { defaultMessage: 'Consigne de puissance réactive' }, + remoteRegulatedTerminal: { defaultMessage: 'Terminal distant réglé' }, + regulatingTerminalVLId: { defaultMessage: 'ID de poste' }, + regulatingTerminalConnectableId: { defaultMessage: "ID d'ouvrage" }, + regulationType: { defaultMessage: 'Type de réglage' }, + 'regulationType.distant': { defaultMessage: 'Réglage distant' }, + 'regulationType.local': { defaultMessage: 'Réglage local' }, + automate: { defaultMessage: 'Automate' }, + lowVoltageSetPoint: { defaultMessage: 'U consigne bas' }, + highVoltageSetPoint: { defaultMessage: 'U consigne haut' }, + lowVoltageThreshold: { defaultMessage: 'U activation bas' }, + highVoltageThreshold: { defaultMessage: 'U activation haut' }, + susceptanceFix: { defaultMessage: 'Susceptance fixe' }, + paired: { defaultMessage: 'Appareillé' }, + converterStationId1: { defaultMessage: 'ID de la station de conversion 1' }, + converterStationId2: { defaultMessage: 'ID de la station de conversion 2' }, + convertersMode: { defaultMessage: 'Mode de conversion' }, + side1RectifierSide2Inverter: { defaultMessage: 'Flux (1->2)' }, + side1InverterSide2Rectifier: { defaultMessage: 'Flux (2->1)' }, + dcNominalVoltage: { defaultMessage: 'Tension nominale DC' }, + converterStationNominalVoltage1: { defaultMessage: 'Tension nominale de la station de conversion 1' }, + converterStationNominalVoltage2: { defaultMessage: 'Tension nominale de la station de conversion 2' }, + country1: { defaultMessage: 'Pays 1' }, + country2: { defaultMessage: 'Pays 2' }, + seriesResistance: { defaultMessage: 'Résistance série' }, + seriesResistance1: { defaultMessage: 'Résistance série 1' }, + seriesResistance2: { defaultMessage: 'Résistance série 2' }, + seriesResistance3: { defaultMessage: 'Résistance série 3' }, + seriesReactance: { defaultMessage: 'Réactance série' }, + seriesReactance1: { defaultMessage: 'Réactance série 1' }, + seriesReactance2: { defaultMessage: 'Réactance série 2' }, + seriesReactance3: { defaultMessage: 'Réactance série 3' }, + shuntConductance: { defaultMessage: 'Conductance parallèle' }, + shuntSusceptance: { defaultMessage: 'Susceptance parallèle' }, + shuntConductance1: { defaultMessage: 'Conductance parallèle 1' }, + shuntSusceptance1: { defaultMessage: 'Susceptance parallèle 1' }, + shuntConductance2: { defaultMessage: 'Conductance parallèle 2' }, + shuntSusceptance2: { defaultMessage: 'Susceptance parallèle 2' }, + pairingKey: { defaultMessage: 'Xnode' }, + tieLineId: { defaultMessage: "ID de l'interconnexion" }, + cannotRetrieveFilter: { defaultMessage: "Erreur d'accès au filtre : " }, + equality: { defaultMessage: '=' }, + notEquality: { defaultMessage: '!=' }, + greaterThan: { defaultMessage: '>' }, + greaterOrEqual: { defaultMessage: '>=' }, + lessThan: { defaultMessage: '<' }, + lessOrEqual: { defaultMessage: '<=' }, + YupNotTypeNumber: { defaultMessage: "Ce champ n'accepte que des valeurs numériques" }, + YupNotTypeDefault: { defaultMessage: "La valeur du champ n'est pas au bon format" }, + changeOperatorMessage: { + defaultMessage: "L'opérateur sera modifié et s'appliquera sur tous les critères déjà créés dans le groupe.", + }, + lowShortCircuitCurrentLimit: { defaultMessage: 'Limite ICC min' }, + highShortCircuitCurrentLimit: { defaultMessage: 'Limite ICC max' }, + valuesList: { defaultMessage: 'Liste de valeurs' }, +}); diff --git a/src/translations/fr/filterFr.ts b/src/translations/fr/filterFr.ts index 9f353071f..68676b90a 100644 --- a/src/translations/fr/filterFr.ts +++ b/src/translations/fr/filterFr.ts @@ -4,55 +4,66 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const filterFr = { - OR: 'OU', - AND: 'ET', - rule: 'critère', - subGroup: 'sous-groupe', - is: 'est', - contains: 'contient', - beginsWith: 'commence par', - endsWith: 'finit par', - exists: 'existe', - not_exists: "n'existe pas", - between: 'entre', - in: 'est parmi', - notIn: "n'est pas parmi", - inFilter: 'dans le filtre', - notInFilter: 'pas dans le filtre', - emptyRule: 'Le filtre contient un champ vide', - incorrectRule: 'Le filtre contient un champ incorrect', - obsoleteFilter: "Ce filtre n'est plus supporté. Veuillez le supprimer ou changer son type d'équipement.", - betweenRule: "La valeur de gauche d'un critère 'entre' doit être inférieure à la valeur de droite", - emptyGroup: 'Le filtre contient un groupe vide. Supprimez le ou ajoutez des critères à ce groupe', - Hvdc: 'HVDC', - 'filter.expert': 'Par critères', - 'filter.explicitNaming': 'Par nommage', - nameEmpty: 'Le nom est vide', - equipmentType: "Type d'ouvrage", - changeTypeMessage: "Le type d'ouvrage sera modifié et la configuration actuelle sera perdue.", - PropertyValues: 'Valeurs de la propriété', - PropertyValues1: 'Valeurs de la propriété 1', - PropertyValues2: 'Valeurs de la propriété 2', - FreePropsCrit: 'Filtrage par propriétés', - AddFreePropCrit: 'Ajouter un filtrage par propriété', - FreeProps: "Propriétés de l'ouvrage", - SubstationFreeProps: "Propriétés du site de l'ouvrage", - YupRequired: 'Ce champ doit être renseigné', - filterPropertiesNameUniquenessError: "Il n'est pas possible d'ajouter plusieurs filtres pour la même propriété", - emptyFilterError: 'Le filtre doit contenir au moins un ouvrage', - distributionKeyWithMissingIdError: 'ID manquant avec une clé de répartition définie', - missingDistributionKeyError: 'Clé de répartition manquante', - filterCsvFileName: 'creationFiltre', - createNewFilter: 'Créer un filtre', - nameProperty: 'Nom', - Countries: 'Pays', - Countries1: 'Pays 1', - Countries2: 'Pays 2', - nominalVoltage: 'Tension nominale', - EnergySourceText: "Source d'énergie", - nameAlreadyUsed: 'Ce nom est déjà utilisé', - nameValidityCheckErrorMsg: 'Erreur lors de la vérification de la validité du nom', - cantSubmitWhileValidating: "Impossible de soumettre le formulaire durant la validation d'un champ", -}; +export const filterFr = defineMessages({ + OR: { defaultMessage: 'OU' }, + AND: { defaultMessage: 'ET' }, + rule: { defaultMessage: 'critère' }, + subGroup: { defaultMessage: 'sous-groupe' }, + is: { defaultMessage: 'est' }, + contains: { defaultMessage: 'contient' }, + beginsWith: { defaultMessage: 'commence par' }, + endsWith: { defaultMessage: 'finit par' }, + exists: { defaultMessage: 'existe' }, + not_exists: { defaultMessage: "n'existe pas" }, + between: { defaultMessage: 'entre' }, + in: { defaultMessage: 'est parmi' }, + notIn: { defaultMessage: "n'est pas parmi" }, + inFilter: { defaultMessage: 'dans le filtre' }, + notInFilter: { defaultMessage: 'pas dans le filtre' }, + emptyRule: { defaultMessage: 'Le filtre contient un champ vide' }, + incorrectRule: { defaultMessage: 'Le filtre contient un champ incorrect' }, + obsoleteFilter: { + defaultMessage: "Ce filtre n'est plus supporté. Veuillez le supprimer ou changer son type d'équipement.", + }, + betweenRule: { + defaultMessage: "La valeur de gauche d'un critère 'entre' doit être inférieure à la valeur de droite", + }, + emptyGroup: { + defaultMessage: 'Le filtre contient un groupe vide. Supprimez le ou ajoutez des critères à ce groupe', + }, + Hvdc: { defaultMessage: 'HVDC' }, + 'filter.expert': { defaultMessage: 'Par critères' }, + 'filter.explicitNaming': { defaultMessage: 'Par nommage' }, + nameEmpty: { defaultMessage: 'Le nom est vide' }, + equipmentType: { defaultMessage: "Type d'ouvrage" }, + changeTypeMessage: { defaultMessage: "Le type d'ouvrage sera modifié et la configuration actuelle sera perdue." }, + PropertyValues: { defaultMessage: 'Valeurs de la propriété' }, + PropertyValues1: { defaultMessage: 'Valeurs de la propriété 1' }, + PropertyValues2: { defaultMessage: 'Valeurs de la propriété 2' }, + FreePropsCrit: { defaultMessage: 'Filtrage par propriétés' }, + AddFreePropCrit: { defaultMessage: 'Ajouter un filtrage par propriété' }, + FreeProps: { defaultMessage: "Propriétés de l'ouvrage" }, + SubstationFreeProps: { defaultMessage: "Propriétés du site de l'ouvrage" }, + YupRequired: { defaultMessage: 'Ce champ doit être renseigné' }, + filterPropertiesNameUniquenessError: { + defaultMessage: "Il n'est pas possible d'ajouter plusieurs filtres pour la même propriété", + }, + emptyFilterError: { defaultMessage: 'Le filtre doit contenir au moins un ouvrage' }, + distributionKeyWithMissingIdError: { defaultMessage: 'ID manquant avec une clé de répartition définie' }, + missingDistributionKeyError: { defaultMessage: 'Clé de répartition manquante' }, + filterCsvFileName: { defaultMessage: 'creationFiltre' }, + createNewFilter: { defaultMessage: 'Créer un filtre' }, + nameProperty: { defaultMessage: 'Nom' }, + Countries: { defaultMessage: 'Pays' }, + Countries1: { defaultMessage: 'Pays 1' }, + Countries2: { defaultMessage: 'Pays 2' }, + nominalVoltage: { defaultMessage: 'Tension nominale' }, + EnergySourceText: { defaultMessage: "Source d'énergie" }, + nameAlreadyUsed: { defaultMessage: 'Ce nom est déjà utilisé' }, + nameValidityCheckErrorMsg: { defaultMessage: 'Erreur lors de la vérification de la validité du nom' }, + cantSubmitWhileValidating: { + defaultMessage: "Impossible de soumettre le formulaire durant la validation d'un champ", + }, +}); diff --git a/src/translations/fr/flatParametersFr.ts b/src/translations/fr/flatParametersFr.ts index 6e0b26309..909efa3d2 100644 --- a/src/translations/fr/flatParametersFr.ts +++ b/src/translations/fr/flatParametersFr.ts @@ -4,9 +4,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const flatParametersFr = { - 'flat_parameters/none': 'Aucune', - 'flat_parameters/some': 'Quelques-unes', - 'flat_parameters/all': 'Toutes', -}; +export const flatParametersFr = defineMessages({ + 'flat_parameters/none': { defaultMessage: 'Aucune' }, + 'flat_parameters/some': { defaultMessage: 'Quelques-unes' }, + 'flat_parameters/all': { defaultMessage: 'Toutes' }, +}); diff --git a/src/translations/fr/inputsFr.ts b/src/translations/fr/inputsFr.ts index 742c7b8f1..f51dba43f 100644 --- a/src/translations/fr/inputsFr.ts +++ b/src/translations/fr/inputsFr.ts @@ -4,22 +4,23 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const inputsFr = { - 'inputs/kiki': 'Kylian Mbappe', - 'inputs/ney': 'Neymar', - 'inputs/lapulga': 'Lionel Messi', - 'inputs/ibra': 'Zlatan Ibrahimovic', - 'inputs/float': 'Float', - 'inputs/integer': 'Integer', - 'inputs/radio': 'Radio', - 'inputs/select': 'Select', - 'inputs/slider': 'Slider', - 'inputs/text': 'Text', - 'inputs/description': 'Description', - 'inputs/autocomplete': 'Autocomplete', - 'inputs/boolean': 'Boolean', - 'inputs/checkbox': 'Checkbox', - 'inputs/switch': 'Switch', - Optional: 'Optional', -}; +export const inputsFr = defineMessages({ + 'inputs/kiki': { defaultMessage: 'Kylian Mbappe' }, + 'inputs/ney': { defaultMessage: 'Neymar' }, + 'inputs/lapulga': { defaultMessage: 'Lionel Messi' }, + 'inputs/ibra': { defaultMessage: 'Zlatan Ibrahimovic' }, + 'inputs/float': { defaultMessage: 'Float' }, + 'inputs/integer': { defaultMessage: 'Integer' }, + 'inputs/radio': { defaultMessage: 'Radio' }, + 'inputs/select': { defaultMessage: 'Select' }, + 'inputs/slider': { defaultMessage: 'Slider' }, + 'inputs/text': { defaultMessage: 'Text' }, + 'inputs/description': { defaultMessage: 'Description' }, + 'inputs/autocomplete': { defaultMessage: 'Autocomplete' }, + 'inputs/boolean': { defaultMessage: 'Boolean' }, + 'inputs/checkbox': { defaultMessage: 'Checkbox' }, + 'inputs/switch': { defaultMessage: 'Switch' }, + Optional: { defaultMessage: 'Optional' }, +}); diff --git a/src/translations/fr/loginFr.ts b/src/translations/fr/loginFr.ts index 927005d75..1725603a9 100644 --- a/src/translations/fr/loginFr.ts +++ b/src/translations/fr/loginFr.ts @@ -4,16 +4,20 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const loginFr = { - 'login/login': 'Se connecter', - 'login/connection': 'Connexion', - 'login/unauthorizedAccess': 'Accès non autorisé', - 'login/unauthorizedAccessMessage': "L'utilisateur {userName} n'a pas encore accès à GridSuite", - 'login/errorInUserValidation': "Erreur lors de la validation de l'utilisateur", - 'login/errorInUserValidationMessage': - "Une erreur s'est produite pendant la validation de l'utilisateur {userName}.", - 'login/errorInLogout': "Erreur lors de la déconnexion de l'utilisateur", - 'login/errorInLogoutMessage': "Une erreur s'est produite pendant la déconnexion de l'utilisateur {userName}.", - 'login/logout': 'Se déconnecter', -}; +export const loginFr = defineMessages({ + 'login/login': { defaultMessage: 'Se connecter' }, + 'login/connection': { defaultMessage: 'Connexion' }, + 'login/unauthorizedAccess': { defaultMessage: 'Accès non autorisé' }, + 'login/unauthorizedAccessMessage': { defaultMessage: "L'utilisateur {userName} n'a pas encore accès à GridSuite" }, + 'login/errorInUserValidation': { defaultMessage: "Erreur lors de la validation de l'utilisateur" }, + 'login/errorInUserValidationMessage': { + defaultMessage: "Une erreur s'est produite pendant la validation de l'utilisateur {userName}.", + }, + 'login/errorInLogout': { defaultMessage: "Erreur lors de la déconnexion de l'utilisateur" }, + 'login/errorInLogoutMessage': { + defaultMessage: "Une erreur s'est produite pendant la déconnexion de l'utilisateur {userName}.", + }, + 'login/logout': { defaultMessage: 'Se déconnecter' }, +}); diff --git a/src/translations/fr/multipleSelectionDialogFr.ts b/src/translations/fr/multipleSelectionDialogFr.ts index 9bb02c31c..3eff233b3 100644 --- a/src/translations/fr/multipleSelectionDialogFr.ts +++ b/src/translations/fr/multipleSelectionDialogFr.ts @@ -4,9 +4,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const multipleSelectionDialogFr = { - 'multiple_selection_dialog/cancel': 'Annuler', - 'multiple_selection_dialog/validate': 'Valider', - 'multiple_selection_dialog/selectAll': 'Tout sélectionner', -}; +export const multipleSelectionDialogFr = defineMessages({ + 'multiple_selection_dialog/cancel': { defaultMessage: 'Annuler' }, + 'multiple_selection_dialog/validate': { defaultMessage: 'Valider' }, + 'multiple_selection_dialog/selectAll': { defaultMessage: 'Tout sélectionner' }, +}); diff --git a/src/translations/fr/networkModificationsFr.ts b/src/translations/fr/networkModificationsFr.ts index 07f31c1ab..49953d4f2 100644 --- a/src/translations/fr/networkModificationsFr.ts +++ b/src/translations/fr/networkModificationsFr.ts @@ -4,68 +4,93 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const networkModificationsFr = { - 'network_modifications.modificationsCount': - '{hide, select, false {{count, plural, =0 {aucune modification} =1 {# modification} other {# modifications}}} other {...}}', - 'network_modifications.EQUIPMENT_DELETION': 'Suppression de {computedLabel}', - 'network_modifications.BY_FILTER_DELETION': 'Suppression par filtre ({computedLabel})', - 'network_modifications.SUBSTATION_CREATION': 'Création du site {computedLabel}', - 'network_modifications.SUBSTATION_MODIFICATION': 'Modification du site {computedLabel}', - 'network_modifications.VOLTAGE_LEVEL_CREATION': 'Création du poste {computedLabel}', - 'network_modifications.VOLTAGE_LEVEL_MODIFICATION': 'Modification du poste {computedLabel}', - 'network_modifications.LINE_SPLIT_WITH_VOLTAGE_LEVEL': "Création d'une coupure {computedLabel}", - 'network_modifications.LINE_ATTACH_TO_VOLTAGE_LEVEL': "Création d'un piquage {computedLabel}", - 'network_modifications.LINES_ATTACH_TO_SPLIT_LINES': 'Passage de piquage en coupure {computedLabel}', - 'network_modifications.LOAD_SCALING': 'Variation plan de consommation {computedLabel}', - 'network_modifications.DELETE_VOLTAGE_LEVEL_ON_LINE': "Suppression d'une coupure {computedLabel}", - 'network_modifications.DELETE_ATTACHING_LINE': "Suppression d'un piquage {computedLabel}", - 'network_modifications.LOAD_CREATION': 'Création de la charge {computedLabel}', - 'network_modifications.LOAD_MODIFICATION': 'Modification de la charge {computedLabel}', - 'network_modifications.BATTERY_CREATION': 'Création de batterie {computedLabel}', - 'network_modifications.BATTERY_MODIFICATION': 'Modification de batterie {computedLabel}', - 'network_modifications.GENERATOR_CREATION': 'Création du générateur {computedLabel}', - 'network_modifications.GENERATOR_MODIFICATION': 'Modification du générateur {computedLabel}', - 'network_modifications.LINE_CREATION': 'Création de la ligne {computedLabel}', - 'network_modifications.LINE_MODIFICATION': 'Modification de la ligne {computedLabel}', - 'network_modifications.TWO_WINDINGS_TRANSFORMER_CREATION': - 'Création du transformateur à 2 enroulements {computedLabel}', - 'network_modifications.TWO_WINDINGS_TRANSFORMER_MODIFICATION': - 'Modification du transformateur à 2 enroulements {computedLabel}', - 'network_modifications.OPERATING_STATUS_MODIFICATION': - "{action, select, TRIP {Déclenchement de {computedLabel}} LOCKOUT {Consignation de {computedLabel}} ENERGISE_END_ONE {Mise sous tension à vide de {computedLabel} depuis {energizedEnd}} ENERGISE_END_TWO {Mise sous tension à vide de {computedLabel} depuis {energizedEnd}} SWITCH_ON {Mise en service de {computedLabel}} other {Modification du statut opérationnel de l'équipement {computedLabel}}}", - 'network_modifications.SHUNT_COMPENSATOR_CREATION': "Création d'un moyen de compensation {computedLabel}", - 'network_modifications.SHUNT_COMPENSATOR_MODIFICATION': "Modification d'un moyen de compensation {computedLabel}", - 'network_modifications.GENERATOR_SCALING': 'Variation plan de production {computedLabel}', - 'network_modifications.VSC_CREATION': 'Création de la HVDC (VSC) {computedLabel}', - 'network_modifications.VSC_MODIFICATION': 'Modification de la HVDC (VSC) {computedLabel}', - 'network_modifications.GROOVY_SCRIPT': 'Modification par script', - 'network_modifications.EQUIPMENT_ATTRIBUTE_MODIFICATION': - "{equipmentAttributeName, select, open {{equipmentAttributeValue, select, true {Ouverture de {computedLabel}} other {Fermeture de {computedLabel}}}} other {Modification de l'equipement {computedLabel}}}", - 'network_modifications.creatingModification': 'Création de la modification en cours ...', - 'network_modifications.deletingModification': 'Suppression de la modification en cours ...', - 'network_modifications.updatingModification': 'Mise à jour de la modification en cours ...', - 'network_modifications.stashingModification': 'Mise en corbeille de la modification en cours ...', - 'network_modifications.restoringModification': 'Restauration de la modification en cours ...', - 'network_modifications.modifications': 'Mise à jour de la liste des modifications en cours ...', - 'network_modifications.GENERATION_DISPATCH': 'Démarrage de groupes {computedLabel}', - 'network_modifications.VOLTAGE_INIT_MODIFICATION': 'Initialisation du plan de tension {computedLabel}', - 'network_modifications.TABULAR_MODIFICATION': 'Modification tabulaire - {computedLabel}', - 'network_modifications.tabular.GENERATOR_MODIFICATION': 'modifications de générateurs', - 'network_modifications.tabular.LOAD_MODIFICATION': 'modifications de consommations', - 'network_modifications.BY_FORMULA_MODIFICATION': 'Modification par formule {computedLabel}', - 'network_modifications.MODIFICATION_BY_ASSIGNMENT': 'Modification par filtre {computedLabel}', - 'network_modifications.tabular.LINE_MODIFICATION': 'modifications de lignes', - 'network_modifications.tabular.BATTERY_MODIFICATION': 'modifications de batteries', - 'network_modifications.tabular.VOLTAGE_LEVEL_MODIFICATION': 'modifications de postes', - 'network_modifications.tabular.TWO_WINDINGS_TRANSFORMER_MODIFICATION': - 'modifications de transformateurs à 2 enroulements', - 'network_modifications.tabular.SHUNT_COMPENSATOR_MODIFICATION': 'modifications de MCS linéaires', - 'network_modifications.tabular.SUBSTATION_MODIFICATION': 'modifications de sites', - 'network_modifications.TABULAR_CREATION': 'Création tabulaire - {computedLabel}', - 'network_modifications.tabular.GENERATOR_CREATION': 'créations de générateurs', - 'network_modifications.LCC_CREATION': 'Création de la HVDC (LCC) {computedLabel}', - 'network_modifications.STATIC_VAR_COMPENSATOR_CREATION': 'Création de CSPR {computedLabel}', - 'network_modifications.VOLTAGE_LEVEL_CREATION_SUBSTATION_CREATION': - 'Création du poste {voltageLevelEquipmentId} et du site {substationEquipmentId}', -}; +export const networkModificationsFr = defineMessages({ + 'network_modifications.modificationsCount': { + defaultMessage: + '{hide, select, false {{count, plural, zero {aucune modification} one {# modification} other {# modifications}}} other {...}}', + }, + 'network_modifications.EQUIPMENT_DELETION': { defaultMessage: 'Suppression de {computedLabel}' }, + 'network_modifications.BY_FILTER_DELETION': { defaultMessage: 'Suppression par filtre ({computedLabel})' }, + 'network_modifications.SUBSTATION_CREATION': { defaultMessage: 'Création du site {computedLabel}' }, + 'network_modifications.SUBSTATION_MODIFICATION': { defaultMessage: 'Modification du site {computedLabel}' }, + 'network_modifications.VOLTAGE_LEVEL_CREATION': { defaultMessage: 'Création du poste {computedLabel}' }, + 'network_modifications.VOLTAGE_LEVEL_MODIFICATION': { defaultMessage: 'Modification du poste {computedLabel}' }, + 'network_modifications.LINE_SPLIT_WITH_VOLTAGE_LEVEL': { defaultMessage: "Création d'une coupure {computedLabel}" }, + 'network_modifications.LINE_ATTACH_TO_VOLTAGE_LEVEL': { defaultMessage: "Création d'un piquage {computedLabel}" }, + 'network_modifications.LINES_ATTACH_TO_SPLIT_LINES': { + defaultMessage: 'Passage de piquage en coupure {computedLabel}', + }, + 'network_modifications.LOAD_SCALING': { defaultMessage: 'Variation plan de consommation {computedLabel}' }, + 'network_modifications.DELETE_VOLTAGE_LEVEL_ON_LINE': { + defaultMessage: "Suppression d'une coupure {computedLabel}", + }, + 'network_modifications.DELETE_ATTACHING_LINE': { defaultMessage: "Suppression d'un piquage {computedLabel}" }, + 'network_modifications.LOAD_CREATION': { defaultMessage: 'Création de la charge {computedLabel}' }, + 'network_modifications.LOAD_MODIFICATION': { defaultMessage: 'Modification de la charge {computedLabel}' }, + 'network_modifications.BATTERY_CREATION': { defaultMessage: 'Création de batterie {computedLabel}' }, + 'network_modifications.BATTERY_MODIFICATION': { defaultMessage: 'Modification de batterie {computedLabel}' }, + 'network_modifications.GENERATOR_CREATION': { defaultMessage: 'Création du générateur {computedLabel}' }, + 'network_modifications.GENERATOR_MODIFICATION': { defaultMessage: 'Modification du générateur {computedLabel}' }, + 'network_modifications.LINE_CREATION': { defaultMessage: 'Création de la ligne {computedLabel}' }, + 'network_modifications.LINE_MODIFICATION': { defaultMessage: 'Modification de la ligne {computedLabel}' }, + 'network_modifications.TWO_WINDINGS_TRANSFORMER_CREATION': { + defaultMessage: 'Création du transformateur à 2 enroulements {computedLabel}', + }, + 'network_modifications.TWO_WINDINGS_TRANSFORMER_MODIFICATION': { + defaultMessage: 'Modification du transformateur à 2 enroulements {computedLabel}', + }, + 'network_modifications.OPERATING_STATUS_MODIFICATION': { + defaultMessage: + "{action, select, TRIP {Déclenchement de {computedLabel}} LOCKOUT {Consignation de {computedLabel}} ENERGISE_END_ONE {Mise sous tension à vide de {computedLabel} depuis {energizedEnd}} ENERGISE_END_TWO {Mise sous tension à vide de {computedLabel} depuis {energizedEnd}} SWITCH_ON {Mise en service de {computedLabel}} other {Modification du statut opérationnel de l'équipement {computedLabel}}}", + }, + 'network_modifications.SHUNT_COMPENSATOR_CREATION': { + defaultMessage: "Création d'un moyen de compensation {computedLabel}", + }, + 'network_modifications.SHUNT_COMPENSATOR_MODIFICATION': { + defaultMessage: "Modification d'un moyen de compensation {computedLabel}", + }, + 'network_modifications.GENERATOR_SCALING': { defaultMessage: 'Variation plan de production {computedLabel}' }, + 'network_modifications.VSC_CREATION': { defaultMessage: 'Création de la HVDC (VSC) {computedLabel}' }, + 'network_modifications.VSC_MODIFICATION': { defaultMessage: 'Modification de la HVDC (VSC) {computedLabel}' }, + 'network_modifications.GROOVY_SCRIPT': { defaultMessage: 'Modification par script' }, + 'network_modifications.EQUIPMENT_ATTRIBUTE_MODIFICATION': { + defaultMessage: + "{equipmentAttributeName, select, open {{equipmentAttributeValue, select, true {Ouverture de {computedLabel}} other {Fermeture de {computedLabel}}}} other {Modification de l'equipement {computedLabel}}}", + }, + 'network_modifications.creatingModification': { defaultMessage: 'Création de la modification en cours ...' }, + 'network_modifications.deletingModification': { defaultMessage: 'Suppression de la modification en cours ...' }, + 'network_modifications.updatingModification': { defaultMessage: 'Mise à jour de la modification en cours ...' }, + 'network_modifications.stashingModification': { + defaultMessage: 'Mise en corbeille de la modification en cours ...', + }, + 'network_modifications.restoringModification': { defaultMessage: 'Restauration de la modification en cours ...' }, + 'network_modifications.modifications': { defaultMessage: 'Mise à jour de la liste des modifications en cours ...' }, + 'network_modifications.GENERATION_DISPATCH': { defaultMessage: 'Démarrage de groupes {computedLabel}' }, + 'network_modifications.VOLTAGE_INIT_MODIFICATION': { + defaultMessage: 'Initialisation du plan de tension {computedLabel}', + }, + 'network_modifications.TABULAR_MODIFICATION': { defaultMessage: 'Modification tabulaire - {computedLabel}' }, + 'network_modifications.tabular.GENERATOR_MODIFICATION': { defaultMessage: 'modifications de générateurs' }, + 'network_modifications.tabular.LOAD_MODIFICATION': { defaultMessage: 'modifications de consommations' }, + 'network_modifications.BY_FORMULA_MODIFICATION': { defaultMessage: 'Modification par formule {computedLabel}' }, + 'network_modifications.MODIFICATION_BY_ASSIGNMENT': { defaultMessage: 'Modification par filtre {computedLabel}' }, + 'network_modifications.tabular.LINE_MODIFICATION': { defaultMessage: 'modifications de lignes' }, + 'network_modifications.tabular.BATTERY_MODIFICATION': { defaultMessage: 'modifications de batteries' }, + 'network_modifications.tabular.VOLTAGE_LEVEL_MODIFICATION': { defaultMessage: 'modifications de postes' }, + 'network_modifications.tabular.TWO_WINDINGS_TRANSFORMER_MODIFICATION': { + defaultMessage: 'modifications de transformateurs à 2 enroulements', + }, + 'network_modifications.tabular.SHUNT_COMPENSATOR_MODIFICATION': { + defaultMessage: 'modifications de MCS linéaires', + }, + 'network_modifications.tabular.SUBSTATION_MODIFICATION': { defaultMessage: 'modifications de sites' }, + 'network_modifications.TABULAR_CREATION': { defaultMessage: 'Création tabulaire - {computedLabel}' }, + 'network_modifications.tabular.GENERATOR_CREATION': { defaultMessage: 'créations de générateurs' }, + 'network_modifications.LCC_CREATION': { defaultMessage: 'Création de la HVDC (LCC) {computedLabel}' }, + 'network_modifications.STATIC_VAR_COMPENSATOR_CREATION': { defaultMessage: 'Création de CSPR {computedLabel}' }, + 'network_modifications.VOLTAGE_LEVEL_CREATION_SUBSTATION_CREATION': { + defaultMessage: 'Création du poste {voltageLevelEquipmentId} et du site {substationEquipmentId}', + }, +}); diff --git a/src/translations/fr/reportViewerFr.ts b/src/translations/fr/reportViewerFr.ts index 99cfbb5ba..0255c1910 100644 --- a/src/translations/fr/reportViewerFr.ts +++ b/src/translations/fr/reportViewerFr.ts @@ -4,9 +4,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const reportViewerFr = { - 'report_viewer/close': 'Fermer', - 'report_viewer/severity': 'Sévérité', - 'report_viewer/message': 'Message', -}; +export const reportViewerFr = defineMessages({ + 'report_viewer/close': { defaultMessage: 'Fermer' }, + 'report_viewer/severity': { defaultMessage: 'Sévérité' }, + 'report_viewer/message': { defaultMessage: 'Message' }, +}); diff --git a/src/translations/fr/tableFr.ts b/src/translations/fr/tableFr.ts index 6eec73ec5..59810963d 100644 --- a/src/translations/fr/tableFr.ts +++ b/src/translations/fr/tableFr.ts @@ -4,7 +4,8 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const tableFr = { - 'MuiVirtualizedTable/exportCSV': 'Télécharger un CSV', -}; +export const tableFr = defineMessages({ + 'MuiVirtualizedTable/exportCSV': { defaultMessage: 'Télécharger un CSV' }, +}); diff --git a/src/translations/fr/topBarFr.ts b/src/translations/fr/topBarFr.ts index 78cee3441..1781f893b 100644 --- a/src/translations/fr/topBarFr.ts +++ b/src/translations/fr/topBarFr.ts @@ -4,49 +4,56 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const topBarFr = { - 'top-bar/userSettings': 'Paramètres utilisateur', - 'top-bar/logout': 'Se déconnecter', - 'top-bar/goFullScreen': 'Plein écran', - 'top-bar/exitFullScreen': 'Quitter mode plein écran', - 'top-bar/userInformation': 'Informations utilisateur', - 'top-bar/about': 'À propos', - 'top-bar/displayMode': "Mode d'affichage", - 'top-bar/equipmentLabel': 'Label des ouvrages', - 'top-bar/id': 'Id', - 'top-bar/name': 'Nom', - 'top-bar/language': 'Langue', - 'top-bar/developerModeWarning': - 'Mode développeur : Certaines fonctionnalités ne sont pas complètes et peuvent ne pas fonctionner comme prévu.', +export const topBarFr = defineMessages({ + 'top-bar/userSettings': { defaultMessage: 'Paramètres utilisateur' }, + 'top-bar/logout': { defaultMessage: 'Se déconnecter' }, + 'top-bar/goFullScreen': { defaultMessage: 'Plein écran' }, + 'top-bar/exitFullScreen': { defaultMessage: 'Quitter mode plein écran' }, + 'top-bar/userInformation': { defaultMessage: 'Informations utilisateur' }, + 'top-bar/about': { defaultMessage: 'À propos' }, + 'top-bar/displayMode': { defaultMessage: "Mode d'affichage" }, + 'top-bar/equipmentLabel': { defaultMessage: 'Label des ouvrages' }, + 'top-bar/id': { defaultMessage: 'Id' }, + 'top-bar/name': { defaultMessage: 'Nom' }, + 'top-bar/language': { defaultMessage: 'Langue' }, + 'top-bar/developerModeWarning': { + defaultMessage: + 'Mode développeur : Certaines fonctionnalités ne sont pas complètes et peuvent ne pas fonctionner comme prévu.', + }, - 'about-dialog/title': 'À propos', - 'about-dialog/version': 'Version {version}', - 'about-dialog/alert-running-old-version-msg': - "Ancienne version de l'application.\nVeuillez sauvegarder votre travail et rafraîchir l'application pour charger la dernière version", - 'about-dialog/license': 'Licence', - 'about-dialog/modules-section': 'Détails des modules', - 'about-dialog/label-version': 'Version', - 'about-dialog/label-git-version': 'Tag', - 'about-dialog/label-type': 'Type', - 'about-dialog/module-tooltip-app': 'application', - 'about-dialog/module-tooltip-server': 'serveur', - 'about-dialog/module-tooltip-other': 'autre', + 'about-dialog/title': { defaultMessage: 'À propos' }, + 'about-dialog/version': { defaultMessage: 'Version {version}' }, + 'about-dialog/alert-running-old-version-msg': { + defaultMessage: + "Ancienne version de l'application.\nVeuillez sauvegarder votre travail et rafraîchir l'application pour charger la dernière version", + }, + 'about-dialog/license': { defaultMessage: 'Licence' }, + 'about-dialog/modules-section': { defaultMessage: 'Détails des modules' }, + 'about-dialog/label-version': { defaultMessage: 'Version' }, + 'about-dialog/label-git-version': { defaultMessage: 'Tag' }, + 'about-dialog/label-type': { defaultMessage: 'Type' }, + 'about-dialog/module-tooltip-app': { defaultMessage: 'application' }, + 'about-dialog/module-tooltip-server': { defaultMessage: 'serveur' }, + 'about-dialog/module-tooltip-other': { defaultMessage: 'autre' }, - 'user-information-dialog/title': 'Informations utilisateur', - 'user-information-dialog/role': 'Rôle', - 'user-information-dialog/role-user': 'Utilisateur simple', - 'user-information-dialog/role-admin': 'Admin', - 'user-information-dialog/profile': 'Profil', - 'user-information-dialog/no-profile': 'Pas de profil', - 'user-information-dialog/quotas': 'Quotas', - 'user-information-dialog/number-of-cases-or-studies': 'Nombre situations ou études', - 'user-information-dialog/used': 'Utilisé', - 'user-information-dialog/number-of-builds-per-study': 'Nombre réalisations par étude', + 'user-information-dialog/title': { defaultMessage: 'Informations utilisateur' }, + 'user-information-dialog/role': { defaultMessage: 'Rôle' }, + 'user-information-dialog/role-user': { defaultMessage: 'Utilisateur simple' }, + 'user-information-dialog/role-admin': { defaultMessage: 'Admin' }, + 'user-information-dialog/profile': { defaultMessage: 'Profil' }, + 'user-information-dialog/no-profile': { defaultMessage: 'Pas de profil' }, + 'user-information-dialog/quotas': { defaultMessage: 'Quotas' }, + 'user-information-dialog/number-of-cases-or-studies': { defaultMessage: 'Nombre situations ou études' }, + 'user-information-dialog/used': { defaultMessage: 'Utilisé : {nb}' }, + 'user-information-dialog/number-of-builds-per-study': { defaultMessage: 'Nombre réalisations par étude' }, - 'user-settings-dialog/title': 'Paramètres utilisateur', - 'user-settings-dialog/label-developer-mode': 'Mode développeur', - 'user-settings-dialog/warning-developer-mode': - 'Certaines fonctionnalités ne sont pas complètes et peuvent donc ne pas fonctionner comme prévu. Pour masquer ces fonctionnalités, désactivez le mode développeur.', - 'user-settings-dialog/close': 'Fermer', -}; + 'user-settings-dialog/title': { defaultMessage: 'Paramètres utilisateur' }, + 'user-settings-dialog/label-developer-mode': { defaultMessage: 'Mode développeur' }, + 'user-settings-dialog/warning-developer-mode': { + defaultMessage: + 'Certaines fonctionnalités ne sont pas complètes et peuvent donc ne pas fonctionner comme prévu. Pour masquer ces fonctionnalités, désactivez le mode développeur.', + }, + 'user-settings-dialog/close': { defaultMessage: 'Fermer' }, +}); diff --git a/src/translations/fr/treeviewFinderFr.ts b/src/translations/fr/treeviewFinderFr.ts index 4dae05a1a..2c9638786 100644 --- a/src/translations/fr/treeviewFinderFr.ts +++ b/src/translations/fr/treeviewFinderFr.ts @@ -4,18 +4,27 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +import { defineMessages } from '../utils'; -export const treeviewFinderFr = { - 'treeview_finder/close': 'Fermer', - 'treeview_finder/validate': 'Valider', - 'treeview_finder/add': 'Ajouter...', - 'treeview_finder/deleteSelection': 'Supprimer la selection', - 'treeview_finder/contentText': - '{multiSelect, select, true {Veuillez choisir un ou plusieurs éléments.} false {Veuillez choisir un élément.} other {}}', - 'treeview_finder/finderTitle': - '{multiSelect, select, true {Veuillez choisir un ou plusieurs éléments.} false {Veuillez choisir un élément.} other {}}', - 'treeview_finder/addElementsValidation': - '{nbElements, plural, =0 {Veuillez sélectionner un élément} =1 {Ajouter cet élément} other {Ajouter # éléments}}', - 'treeview_finder/replaceElementsValidation': - '{nbElements, plural, =0 {Veuillez sélectionner un élément} =1 {Remplacer par cet élément} other {Remplacer par # éléments}}', -}; +export const treeviewFinderFr = defineMessages({ + 'treeview_finder/close': { defaultMessage: 'Fermer' }, + 'treeview_finder/validate': { defaultMessage: 'Valider' }, + 'treeview_finder/add': { defaultMessage: 'Ajouter...' }, + 'treeview_finder/deleteSelection': { defaultMessage: 'Supprimer la selection' }, + 'treeview_finder/contentText': { + defaultMessage: + '{multiSelect, select, true {Veuillez choisir un ou plusieurs éléments.} false {Veuillez choisir un élément.} other {}}', + }, + 'treeview_finder/finderTitle': { + defaultMessage: + '{multiSelect, select, true {Veuillez choisir un ou plusieurs éléments.} false {Veuillez choisir un élément.} other {}}', + }, + 'treeview_finder/addElementsValidation': { + defaultMessage: + '{nbElements, plural, zero {Veuillez sélectionner un élément} one {Ajouter cet élément} other {Ajouter # éléments}}', + }, + 'treeview_finder/replaceElementsValidation': { + defaultMessage: + '{nbElements, plural, zero {Veuillez sélectionner un élément} one {Remplacer par cet élément} other {Remplacer par # éléments}}', + }, +}); diff --git a/src/translations/utils.ts b/src/translations/utils.ts new file mode 100644 index 000000000..d2d961740 --- /dev/null +++ b/src/translations/utils.ts @@ -0,0 +1,32 @@ +/* + * Copyright © 2025, RTE (http://www.rte-france.com) + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +import type { MessageDescriptor } from 'react-intl'; + +type MsgDescriptor = Omit & { + id?: ID; + defaultMessage: string; +}; +type Translations = { + [K in ID]: MsgDescriptor; +}; + +/** + * Simple mapper for IntlProvider and serve as hook for eslint-plugin-formatjs which need {@link MessageDescriptor} to work. + * @param msgs the messages + * @see {@link import('react-intl').defineMessages defineMessages} + * @todo replace by babel-plugin-formatjs or @formatjs/ts-transformer + */ +export function defineTranslations(msgs: Translations): Record { + return (Object.entries>(msgs) as Array<[ID, MsgDescriptor]>).reduce((acc, [id, msgDescr]) => { + acc[id] = msgDescr.defaultMessage; + return acc; + }, {} as Record); +} + +// TODO: found how to use shared settings, https://formatjs.github.io/docs/tooling/linter/#formatjsadditionalfunctionnames +export const defineMessages = defineTranslations;