i18next.config.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. /*
  2. Copyright (C) 2025 QuantumNous
  3. This program is free software: you can redistribute it and/or modify
  4. it under the terms of the GNU Affero General Public License as
  5. published by the Free Software Foundation, either version 3 of the
  6. License, or (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU Affero General Public License for more details.
  11. You should have received a copy of the GNU Affero General Public License
  12. along with this program. If not, see <https://www.gnu.org/licenses/>.
  13. For commercial licensing, please contact [email protected]
  14. */
  15. import { defineConfig } from 'i18next-cli';
  16. /** @type {import('i18next-cli').I18nextToolkitConfig} */
  17. export default defineConfig({
  18. locales: [
  19. "zh",
  20. "en",
  21. "fr",
  22. "ru"
  23. ],
  24. extract: {
  25. input: [
  26. "src/**/*.{js,jsx,ts,tsx}"
  27. ],
  28. ignore: [
  29. "src/i18n/**/*"
  30. ],
  31. output: "src/i18n/locales/{{language}}.json",
  32. ignoredAttributes: [
  33. "accept",
  34. "align",
  35. "aria-label",
  36. "autoComplete",
  37. "className",
  38. "clipRule",
  39. "color",
  40. "crossOrigin",
  41. "data-index",
  42. "data-name",
  43. "data-testid",
  44. "data-type",
  45. "defaultActiveKey",
  46. "direction",
  47. "editorType",
  48. "field",
  49. "fill",
  50. "fillRule",
  51. "height",
  52. "hoverStyle",
  53. "htmlType",
  54. "id",
  55. "itemKey",
  56. "key",
  57. "keyPrefix",
  58. "layout",
  59. "margin",
  60. "maxHeight",
  61. "mode",
  62. "name",
  63. "overflow",
  64. "placement",
  65. "position",
  66. "rel",
  67. "role",
  68. "rowKey",
  69. "searchPosition",
  70. "selectedStyle",
  71. "shape",
  72. "size",
  73. "style",
  74. "theme",
  75. "trigger",
  76. "uploadTrigger",
  77. "validateStatus",
  78. "value",
  79. "viewBox",
  80. "width"
  81. ],
  82. sort: true,
  83. disablePlurals: false,
  84. removeUnusedKeys: false,
  85. nsSeparator: false,
  86. keySeparator: false,
  87. mergeNamespaces: true
  88. }
  89. });