@strapi/i18n 0.0.0-experimental.e9303c99ae3c28b4b8421ab6971efae0748dd599 → 0.0.0-experimental.e99215433ba1d6e5497350812df274f426dbdba3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/dist/admin/components/CMHeaderActions.js +116 -1
  2. package/dist/admin/components/CMHeaderActions.js.map +1 -1
  3. package/dist/admin/components/CMHeaderActions.mjs +119 -5
  4. package/dist/admin/components/CMHeaderActions.mjs.map +1 -1
  5. package/dist/admin/components/CreateLocale.js +1 -1
  6. package/dist/admin/components/CreateLocale.js.map +1 -1
  7. package/dist/admin/components/CreateLocale.mjs +1 -1
  8. package/dist/admin/components/CreateLocale.mjs.map +1 -1
  9. package/dist/admin/components/EditLocale.js +1 -1
  10. package/dist/admin/components/EditLocale.js.map +1 -1
  11. package/dist/admin/components/EditLocale.mjs +1 -1
  12. package/dist/admin/components/EditLocale.mjs.map +1 -1
  13. package/dist/admin/components/LocaleListCell.js +65 -45
  14. package/dist/admin/components/LocaleListCell.js.map +1 -1
  15. package/dist/admin/components/LocaleListCell.mjs +66 -46
  16. package/dist/admin/components/LocaleListCell.mjs.map +1 -1
  17. package/dist/admin/components/LocalePicker.js +18 -11
  18. package/dist/admin/components/LocalePicker.js.map +1 -1
  19. package/dist/admin/components/LocalePicker.mjs +19 -12
  20. package/dist/admin/components/LocalePicker.mjs.map +1 -1
  21. package/dist/admin/contentManagerHooks/editView.js +6 -3
  22. package/dist/admin/contentManagerHooks/editView.js.map +1 -1
  23. package/dist/admin/contentManagerHooks/editView.mjs +7 -4
  24. package/dist/admin/contentManagerHooks/editView.mjs.map +1 -1
  25. package/dist/admin/contentManagerHooks/listView.js +2 -1
  26. package/dist/admin/contentManagerHooks/listView.js.map +1 -1
  27. package/dist/admin/contentManagerHooks/listView.mjs +2 -1
  28. package/dist/admin/contentManagerHooks/listView.mjs.map +1 -1
  29. package/dist/admin/index.js +1 -1
  30. package/dist/admin/index.js.map +1 -1
  31. package/dist/admin/index.mjs +2 -2
  32. package/dist/admin/index.mjs.map +1 -1
  33. package/dist/admin/middlewares/extendCTBAttributeInitialData.js +34 -24
  34. package/dist/admin/middlewares/extendCTBAttributeInitialData.js.map +1 -1
  35. package/dist/admin/middlewares/extendCTBAttributeInitialData.mjs +34 -24
  36. package/dist/admin/middlewares/extendCTBAttributeInitialData.mjs.map +1 -1
  37. package/dist/admin/pages/SettingsPage.js +121 -46
  38. package/dist/admin/pages/SettingsPage.js.map +1 -1
  39. package/dist/admin/pages/SettingsPage.mjs +124 -30
  40. package/dist/admin/pages/SettingsPage.mjs.map +1 -1
  41. package/dist/admin/services/api.js +3 -1
  42. package/dist/admin/services/api.js.map +1 -1
  43. package/dist/admin/services/api.mjs +3 -1
  44. package/dist/admin/services/api.mjs.map +1 -1
  45. package/dist/admin/services/locales.js +4 -2
  46. package/dist/admin/services/locales.js.map +1 -1
  47. package/dist/admin/services/locales.mjs +4 -2
  48. package/dist/admin/services/locales.mjs.map +1 -1
  49. package/dist/admin/services/settings.js +29 -0
  50. package/dist/admin/services/settings.js.map +1 -0
  51. package/dist/admin/services/settings.mjs +26 -0
  52. package/dist/admin/services/settings.mjs.map +1 -0
  53. package/dist/admin/src/components/CMHeaderActions.d.ts +7 -1
  54. package/dist/admin/src/components/LocaleListCell.d.ts +2 -1
  55. package/dist/admin/src/services/api.d.ts +1 -1
  56. package/dist/admin/src/services/locales.d.ts +1 -1
  57. package/dist/admin/src/services/relations.d.ts +1 -1
  58. package/dist/admin/src/services/settings.d.ts +5 -0
  59. package/dist/admin/src/utils/schemas.d.ts +642 -16
  60. package/dist/admin/translations/en.json.js +7 -0
  61. package/dist/admin/translations/en.json.js.map +1 -1
  62. package/dist/admin/translations/en.json.mjs +7 -0
  63. package/dist/admin/translations/en.json.mjs.map +1 -1
  64. package/dist/admin/utils/clean.js +2 -2
  65. package/dist/admin/utils/clean.js.map +1 -1
  66. package/dist/admin/utils/clean.mjs +2 -2
  67. package/dist/admin/utils/clean.mjs.map +1 -1
  68. package/dist/admin/utils/fields.js +6 -1
  69. package/dist/admin/utils/fields.js.map +1 -1
  70. package/dist/admin/utils/fields.mjs +6 -1
  71. package/dist/admin/utils/fields.mjs.map +1 -1
  72. package/dist/admin/utils/schemas.js +19 -13
  73. package/dist/admin/utils/schemas.js.map +1 -1
  74. package/dist/admin/utils/schemas.mjs +19 -13
  75. package/dist/admin/utils/schemas.mjs.map +1 -1
  76. package/dist/server/constants/iso-locales.json.js +4 -0
  77. package/dist/server/constants/iso-locales.json.js.map +1 -1
  78. package/dist/server/constants/iso-locales.json.mjs +4 -0
  79. package/dist/server/constants/iso-locales.json.mjs.map +1 -1
  80. package/dist/server/controllers/index.js +3 -1
  81. package/dist/server/controllers/index.js.map +1 -1
  82. package/dist/server/controllers/index.mjs +3 -1
  83. package/dist/server/controllers/index.mjs.map +1 -1
  84. package/dist/server/controllers/settings.js +24 -0
  85. package/dist/server/controllers/settings.js.map +1 -0
  86. package/dist/server/controllers/settings.mjs +22 -0
  87. package/dist/server/controllers/settings.mjs.map +1 -0
  88. package/dist/server/routes/admin.js +20 -0
  89. package/dist/server/routes/admin.js.map +1 -1
  90. package/dist/server/routes/admin.mjs +20 -0
  91. package/dist/server/routes/admin.mjs.map +1 -1
  92. package/dist/server/routes/content-api.js +11 -7
  93. package/dist/server/routes/content-api.js.map +1 -1
  94. package/dist/server/routes/content-api.mjs +11 -7
  95. package/dist/server/routes/content-api.mjs.map +1 -1
  96. package/dist/server/routes/index.mjs +2 -2
  97. package/dist/server/routes/validation/locale.js +57 -0
  98. package/dist/server/routes/validation/locale.js.map +1 -0
  99. package/dist/server/routes/validation/locale.mjs +36 -0
  100. package/dist/server/routes/validation/locale.mjs.map +1 -0
  101. package/dist/server/services/ai-localizations.js +143 -0
  102. package/dist/server/services/ai-localizations.js.map +1 -0
  103. package/dist/server/services/ai-localizations.mjs +141 -0
  104. package/dist/server/services/ai-localizations.mjs.map +1 -0
  105. package/dist/server/services/index.js +5 -1
  106. package/dist/server/services/index.js.map +1 -1
  107. package/dist/server/services/index.mjs +5 -1
  108. package/dist/server/services/index.mjs.map +1 -1
  109. package/dist/server/services/settings.js +25 -0
  110. package/dist/server/services/settings.js.map +1 -0
  111. package/dist/server/services/settings.mjs +23 -0
  112. package/dist/server/services/settings.mjs.map +1 -0
  113. package/dist/server/src/controllers/index.d.ts +4 -0
  114. package/dist/server/src/controllers/index.d.ts.map +1 -1
  115. package/dist/server/src/controllers/settings.d.ts +7 -0
  116. package/dist/server/src/controllers/settings.d.ts.map +1 -0
  117. package/dist/server/src/index.d.ts +26 -7
  118. package/dist/server/src/index.d.ts.map +1 -1
  119. package/dist/server/src/routes/admin.d.ts.map +1 -1
  120. package/dist/server/src/routes/content-api.d.ts +5 -8
  121. package/dist/server/src/routes/content-api.d.ts.map +1 -1
  122. package/dist/server/src/routes/index.d.ts +3 -7
  123. package/dist/server/src/routes/index.d.ts.map +1 -1
  124. package/dist/server/src/routes/validation/index.d.ts +2 -0
  125. package/dist/server/src/routes/validation/index.d.ts.map +1 -0
  126. package/dist/server/src/routes/validation/locale.d.ts +41 -0
  127. package/dist/server/src/routes/validation/locale.d.ts.map +1 -0
  128. package/dist/server/src/services/ai-localizations.d.ts +17 -0
  129. package/dist/server/src/services/ai-localizations.d.ts.map +1 -0
  130. package/dist/server/src/services/index.d.ts +19 -0
  131. package/dist/server/src/services/index.d.ts.map +1 -1
  132. package/dist/server/src/services/settings.d.ts +13 -0
  133. package/dist/server/src/services/settings.d.ts.map +1 -0
  134. package/dist/server/src/utils/index.d.ts +5 -1
  135. package/dist/server/src/utils/index.d.ts.map +1 -1
  136. package/dist/server/src/validation/settings.d.ts +12 -0
  137. package/dist/server/src/validation/settings.d.ts.map +1 -0
  138. package/dist/server/utils/index.js.map +1 -1
  139. package/dist/server/utils/index.mjs.map +1 -1
  140. package/dist/server/validation/settings.js +11 -0
  141. package/dist/server/validation/settings.js.map +1 -0
  142. package/dist/server/validation/settings.mjs +9 -0
  143. package/dist/server/validation/settings.mjs.map +1 -0
  144. package/dist/shared/contracts/settings.d.ts +40 -0
  145. package/package.json +11 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import permissions from './permissions';\nimport metrics from './metrics';\nimport localizations from './localizations';\nimport locales from './locales';\nimport isoLocales from './iso-locales';\nimport contentTypes from './content-types';\nimport sanitize from './sanitize';\n\nexport default {\n permissions,\n metrics,\n localizations,\n locales,\n sanitize,\n 'iso-locales': isoLocales,\n 'content-types': contentTypes,\n};\n"],"names":["permissions","metrics","localizations","locales","sanitize","isoLocales","contentTypes"],"mappings":";;;;;;;;;;AAQA,eAAe;AACbA,IAAAA,WAAAA;AACAC,IAAAA,OAAAA;AACAC,IAAAA,aAAAA;AACAC,IAAAA,OAAAA;AACAC,cAAAA,KAAAA;IACA,aAAeC,EAAAA,UAAAA;IACf,eAAiBC,EAAAA;AACnB,CAAE;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import permissions from './permissions';\nimport metrics from './metrics';\nimport localizations from './localizations';\nimport locales from './locales';\nimport isoLocales from './iso-locales';\nimport contentTypes from './content-types';\nimport sanitize from './sanitize';\nimport { createSettingsService } from './settings';\nimport { createAILocalizationsService } from './ai-localizations';\n\nexport default {\n permissions,\n metrics,\n localizations,\n locales,\n sanitize,\n 'iso-locales': isoLocales,\n 'content-types': contentTypes,\n 'ai-localizations': createAILocalizationsService,\n settings: createSettingsService,\n};\n"],"names":["permissions","metrics","localizations","locales","sanitize","isoLocales","contentTypes","createAILocalizationsService","settings","createSettingsService"],"mappings":";;;;;;;;;;;;AAUA,eAAe;AACbA,IAAAA,WAAAA;AACAC,IAAAA,OAAAA;AACAC,IAAAA,aAAAA;AACAC,IAAAA,OAAAA;AACAC,cAAAA,KAAAA;IACA,aAAeC,EAAAA,UAAAA;IACf,eAAiBC,EAAAA,YAAAA;IACjB,kBAAoBC,EAAAA,4CAAAA;IACpBC,QAAUC,EAAAA;AACZ,CAAE;;;;"}
@@ -5,6 +5,8 @@ import locales from './locales.mjs';
5
5
  import isoLocalesService from './iso-locales.mjs';
6
6
  import contentTypes from './content-types.mjs';
7
7
  import sanitize from './sanitize/index.mjs';
8
+ import { createSettingsService } from './settings.mjs';
9
+ import { createAILocalizationsService } from './ai-localizations.mjs';
8
10
 
9
11
  var services = {
10
12
  permissions,
@@ -13,7 +15,9 @@ var services = {
13
15
  locales,
14
16
  sanitize,
15
17
  'iso-locales': isoLocalesService,
16
- 'content-types': contentTypes
18
+ 'content-types': contentTypes,
19
+ 'ai-localizations': createAILocalizationsService,
20
+ settings: createSettingsService
17
21
  };
18
22
 
19
23
  export { services as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import permissions from './permissions';\nimport metrics from './metrics';\nimport localizations from './localizations';\nimport locales from './locales';\nimport isoLocales from './iso-locales';\nimport contentTypes from './content-types';\nimport sanitize from './sanitize';\n\nexport default {\n permissions,\n metrics,\n localizations,\n locales,\n sanitize,\n 'iso-locales': isoLocales,\n 'content-types': contentTypes,\n};\n"],"names":["permissions","metrics","localizations","locales","sanitize","isoLocales","contentTypes"],"mappings":";;;;;;;;AAQA,eAAe;AACbA,IAAAA,WAAAA;AACAC,IAAAA,OAAAA;AACAC,IAAAA,aAAAA;AACAC,IAAAA,OAAAA;AACAC,IAAAA,QAAAA;IACA,aAAeC,EAAAA,iBAAAA;IACf,eAAiBC,EAAAA;AACnB,CAAE;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import permissions from './permissions';\nimport metrics from './metrics';\nimport localizations from './localizations';\nimport locales from './locales';\nimport isoLocales from './iso-locales';\nimport contentTypes from './content-types';\nimport sanitize from './sanitize';\nimport { createSettingsService } from './settings';\nimport { createAILocalizationsService } from './ai-localizations';\n\nexport default {\n permissions,\n metrics,\n localizations,\n locales,\n sanitize,\n 'iso-locales': isoLocales,\n 'content-types': contentTypes,\n 'ai-localizations': createAILocalizationsService,\n settings: createSettingsService,\n};\n"],"names":["permissions","metrics","localizations","locales","sanitize","isoLocales","contentTypes","createAILocalizationsService","settings","createSettingsService"],"mappings":";;;;;;;;;;AAUA,eAAe;AACbA,IAAAA,WAAAA;AACAC,IAAAA,OAAAA;AACAC,IAAAA,aAAAA;AACAC,IAAAA,OAAAA;AACAC,IAAAA,QAAAA;IACA,aAAeC,EAAAA,iBAAAA;IACf,eAAiBC,EAAAA,YAAAA;IACjB,kBAAoBC,EAAAA,4BAAAA;IACpBC,QAAUC,EAAAA;AACZ,CAAE;;;;"}
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ const createSettingsService = ({ strapi })=>{
4
+ const settings = strapi.store({
5
+ type: 'plugin',
6
+ name: 'i18n',
7
+ key: 'settings'
8
+ });
9
+ async function getSettings() {
10
+ const res = await settings.get({});
11
+ return res;
12
+ }
13
+ function setSettings(value) {
14
+ return settings.set({
15
+ value
16
+ });
17
+ }
18
+ return {
19
+ getSettings,
20
+ setSettings
21
+ };
22
+ };
23
+
24
+ exports.createSettingsService = createSettingsService;
25
+ //# sourceMappingURL=settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.js","sources":["../../../server/src/services/settings.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport type { Settings } from '../validation/settings';\n\nconst createSettingsService = ({ strapi }: { strapi: Core.Strapi }) => {\n const settings = strapi.store!({ type: 'plugin', name: 'i18n', key: 'settings' });\n\n async function getSettings() {\n const res = (await settings.get({})) as Settings | null;\n\n return res;\n }\n\n function setSettings(value: Settings) {\n return settings.set({ value });\n }\n\n return {\n getSettings,\n setSettings,\n };\n};\n\nexport { createSettingsService };\nexport type SettingsService = ReturnType<typeof createSettingsService>;\n"],"names":["createSettingsService","strapi","settings","store","type","name","key","getSettings","res","get","setSettings","value","set"],"mappings":";;AAGA,MAAMA,qBAAwB,GAAA,CAAC,EAAEC,MAAM,EAA2B,GAAA;IAChE,MAAMC,QAAAA,GAAWD,MAAOE,CAAAA,KAAK,CAAE;QAAEC,IAAM,EAAA,QAAA;QAAUC,IAAM,EAAA,MAAA;QAAQC,GAAK,EAAA;AAAW,KAAA,CAAA;IAE/E,eAAeC,WAAAA,GAAAA;AACb,QAAA,MAAMC,GAAO,GAAA,MAAMN,QAASO,CAAAA,GAAG,CAAC,EAAC,CAAA;QAEjC,OAAOD,GAAAA;AACT;AAEA,IAAA,SAASE,YAAYC,KAAe,EAAA;QAClC,OAAOT,QAAAA,CAASU,GAAG,CAAC;AAAED,YAAAA;AAAM,SAAA,CAAA;AAC9B;IAEA,OAAO;AACLJ,QAAAA,WAAAA;AACAG,QAAAA;AACF,KAAA;AACF;;;;"}
@@ -0,0 +1,23 @@
1
+ const createSettingsService = ({ strapi })=>{
2
+ const settings = strapi.store({
3
+ type: 'plugin',
4
+ name: 'i18n',
5
+ key: 'settings'
6
+ });
7
+ async function getSettings() {
8
+ const res = await settings.get({});
9
+ return res;
10
+ }
11
+ function setSettings(value) {
12
+ return settings.set({
13
+ value
14
+ });
15
+ }
16
+ return {
17
+ getSettings,
18
+ setSettings
19
+ };
20
+ };
21
+
22
+ export { createSettingsService };
23
+ //# sourceMappingURL=settings.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.mjs","sources":["../../../server/src/services/settings.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport type { Settings } from '../validation/settings';\n\nconst createSettingsService = ({ strapi }: { strapi: Core.Strapi }) => {\n const settings = strapi.store!({ type: 'plugin', name: 'i18n', key: 'settings' });\n\n async function getSettings() {\n const res = (await settings.get({})) as Settings | null;\n\n return res;\n }\n\n function setSettings(value: Settings) {\n return settings.set({ value });\n }\n\n return {\n getSettings,\n setSettings,\n };\n};\n\nexport { createSettingsService };\nexport type SettingsService = ReturnType<typeof createSettingsService>;\n"],"names":["createSettingsService","strapi","settings","store","type","name","key","getSettings","res","get","setSettings","value","set"],"mappings":"AAGA,MAAMA,qBAAwB,GAAA,CAAC,EAAEC,MAAM,EAA2B,GAAA;IAChE,MAAMC,QAAAA,GAAWD,MAAOE,CAAAA,KAAK,CAAE;QAAEC,IAAM,EAAA,QAAA;QAAUC,IAAM,EAAA,MAAA;QAAQC,GAAK,EAAA;AAAW,KAAA,CAAA;IAE/E,eAAeC,WAAAA,GAAAA;AACb,QAAA,MAAMC,GAAO,GAAA,MAAMN,QAASO,CAAAA,GAAG,CAAC,EAAC,CAAA;QAEjC,OAAOD,GAAAA;AACT;AAEA,IAAA,SAASE,YAAYC,KAAe,EAAA;QAClC,OAAOT,QAAAA,CAASU,GAAG,CAAC;AAAED,YAAAA;AAAM,SAAA,CAAA;AAC9B;IAEA,OAAO;AACLJ,QAAAA,WAAAA;AACAG,QAAAA;AACF,KAAA;AACF;;;;"}
@@ -5,6 +5,10 @@ declare const _default: {
5
5
  'content-types': {
6
6
  getNonLocalizedAttributes(ctx: import("koa").Context): Promise<import("koa").Context | undefined>;
7
7
  };
8
+ settings: {
9
+ updateSettings(ctx: import("koa").Context): Promise<void>;
10
+ getSettings(ctx: import("koa").Context): Promise<void>;
11
+ };
8
12
  };
9
13
  export default _default;
10
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/index.ts"],"names":[],"mappings":";;;;;;;;AAIA,wBAIE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAKA,wBAKE"}
@@ -0,0 +1,7 @@
1
+ import type { Context } from 'koa';
2
+ declare const _default: {
3
+ updateSettings(ctx: Context): Promise<void>;
4
+ getSettings(ctx: Context): Promise<void>;
5
+ };
6
+ export default _default;
7
+ //# sourceMappingURL=settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;wBAMP,OAAO;qBAYV,OAAO;;AAbhC,wBAkBE"}
@@ -22,13 +22,9 @@ declare const _default: () => {
22
22
  };
23
23
  }[];
24
24
  };
25
- 'content-api': {
26
- type: string;
27
- routes: {
28
- method: string;
29
- path: string;
30
- handler: string;
31
- }[];
25
+ 'content-api': () => {
26
+ type: "content-api";
27
+ routes: import("@strapi/types/dist/core").RouteInput[];
32
28
  };
33
29
  };
34
30
  controllers: {
@@ -37,6 +33,10 @@ declare const _default: () => {
37
33
  'content-types': {
38
34
  getNonLocalizedAttributes(ctx: import("koa").Context): Promise<import("koa").Context | undefined>;
39
35
  };
36
+ settings: {
37
+ updateSettings(ctx: import("koa").Context): Promise<void>;
38
+ getSettings(ctx: import("koa").Context): Promise<void>;
39
+ };
40
40
  };
41
41
  contentTypes: {
42
42
  locale: {
@@ -150,6 +150,25 @@ declare const _default: () => {
150
150
  fillNonLocalizedAttributes: (entry: any, relatedEntry: any, { model }: any) => void;
151
151
  getNestedPopulateOfNonLocalizedAttributes: (modelUID: any) => string[];
152
152
  };
153
+ 'ai-localizations': ({ strapi }: {
154
+ strapi: import("@strapi/types/dist/core").Strapi;
155
+ }) => {
156
+ isEnabled(): Promise<boolean>;
157
+ generateDocumentLocalizations({ model, document, }: {
158
+ model: import("@strapi/types/dist/uid").ContentType;
159
+ document: import("@strapi/types/dist/modules/documents").AnyDocument;
160
+ }): Promise<void>;
161
+ };
162
+ settings: ({ strapi }: {
163
+ strapi: import("@strapi/types/dist/core").Strapi;
164
+ }) => {
165
+ getSettings: () => Promise<import("yup/lib/object").AssertsShape<{
166
+ aiLocalizations: import("yup").BooleanSchema<boolean, Record<string, any>, boolean>;
167
+ }> | null>;
168
+ setSettings: (value: import("yup/lib/object").AssertsShape<{
169
+ aiLocalizations: import("yup").BooleanSchema<boolean, Record<string, any>, boolean>;
170
+ }>) => Promise<void>;
171
+ };
153
172
  };
154
173
  };
155
174
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,wBAOG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,wBAOG"}
@@ -1 +1 @@
1
- {"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../../../server/src/routes/admin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wBA4EE"}
1
+ {"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../../../server/src/routes/admin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wBA4FE"}
@@ -1,10 +1,7 @@
1
- declare const _default: {
2
- type: string;
3
- routes: {
4
- method: string;
5
- path: string;
6
- handler: string;
7
- }[];
1
+ import type { Core } from '@strapi/types';
2
+ declare const createContentApiRoutes: () => {
3
+ type: "content-api";
4
+ routes: Core.RouteInput[];
8
5
  };
9
- export default _default;
6
+ export default createContentApiRoutes;
10
7
  //# sourceMappingURL=content-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"content-api.d.ts","sourceRoot":"","sources":["../../../../server/src/routes/content-api.ts"],"names":[],"mappings":";;;;;;;;AAAA,wBASE"}
1
+ {"version":3,"file":"content-api.d.ts","sourceRoot":"","sources":["../../../../server/src/routes/content-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAI1C,QAAA,MAAM,sBAAsB;;;CAU1B,CAAC;AAEH,eAAe,sBAAsB,CAAC"}
@@ -15,13 +15,9 @@ declare const _default: {
15
15
  };
16
16
  }[];
17
17
  };
18
- 'content-api': {
19
- type: string;
20
- routes: {
21
- method: string;
22
- path: string;
23
- handler: string;
24
- }[];
18
+ 'content-api': () => {
19
+ type: "content-api";
20
+ routes: import("@strapi/types/dist/core").RouteInput[];
25
21
  };
26
22
  };
27
23
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/routes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAGE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/routes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAGA,wBAGE"}
@@ -0,0 +1,2 @@
1
+ export { I18nLocaleRouteValidator } from './locale';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/routes/validation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,41 @@
1
+ import type { Core } from '@strapi/types';
2
+ import * as z from 'zod/v4';
3
+ /**
4
+ * A validator for i18n locale routes.
5
+ *
6
+ */
7
+ export declare class I18nLocaleRouteValidator {
8
+ protected readonly _strapi: Core.Strapi;
9
+ constructor(strapi: Core.Strapi);
10
+ /**
11
+ * Generates a validation schema for a single locale.
12
+ *
13
+ * @returns A schema for validating locale objects
14
+ */
15
+ get locale(): z.ZodObject<{
16
+ id: z.ZodNumber;
17
+ documentId: z.ZodString;
18
+ name: z.ZodString;
19
+ code: z.ZodString;
20
+ createdAt: z.ZodString;
21
+ updatedAt: z.ZodString;
22
+ publishedAt: z.ZodNullable<z.ZodString>;
23
+ isDefault: z.ZodBoolean;
24
+ }, z.core.$strip>;
25
+ /**
26
+ * Generates a validation schema for an array of locales
27
+ *
28
+ * @returns A schema for validating arrays of locales
29
+ */
30
+ get locales(): z.ZodArray<z.ZodObject<{
31
+ id: z.ZodNumber;
32
+ documentId: z.ZodString;
33
+ name: z.ZodString;
34
+ code: z.ZodString;
35
+ createdAt: z.ZodString;
36
+ updatedAt: z.ZodString;
37
+ publishedAt: z.ZodNullable<z.ZodString>;
38
+ isDefault: z.ZodBoolean;
39
+ }, z.core.$strip>>;
40
+ }
41
+ //# sourceMappingURL=locale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.d.ts","sourceRoot":"","sources":["../../../../../server/src/routes/validation/locale.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B;;;GAGG;AACH,qBAAa,wBAAwB;IACnC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;gBAErB,MAAM,EAAE,IAAI,CAAC,MAAM;IAItC;;;;OAIG;IACH,IAAI,MAAM;;;;;;;;;sBAWT;IAED;;;;OAIG;IACH,IAAI,OAAO;;;;;;;;;uBAEV;CACF"}
@@ -0,0 +1,17 @@
1
+ import type { Core, Modules, UID } from '@strapi/types';
2
+ declare const createAILocalizationsService: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => {
5
+ isEnabled(): Promise<boolean>;
6
+ /**
7
+ * Checks if there are localizations that need to be generated for the given document,
8
+ * and if so, calls the AI service and saves the results to the database.
9
+ * Works for both single and collection types, on create and update.
10
+ */
11
+ generateDocumentLocalizations({ model, document, }: {
12
+ model: UID.ContentType;
13
+ document: Modules.Documents.AnyDocument;
14
+ }): Promise<void>;
15
+ };
16
+ export { createAILocalizationsService };
17
+ //# sourceMappingURL=ai-localizations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-localizations.d.ts","sourceRoot":"","sources":["../../../../server/src/services/ai-localizations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAIxD,QAAA,MAAM,4BAA4B,eAAgB;IAAE,MAAM,EAAE,KAAK,MAAM,CAAA;CAAE;;IA4BrE;;;;OAIG;wDAIA;QACD,KAAK,EAAE,IAAI,WAAW,CAAC;QACvB,QAAQ,EAAE,QAAQ,SAAS,CAAC,WAAW,CAAC;KACzC;CAkIJ,CAAC;AAEF,OAAO,EAAE,4BAA4B,EAAE,CAAC"}
@@ -76,6 +76,25 @@ declare const _default: {
76
76
  fillNonLocalizedAttributes: (entry: any, relatedEntry: any, { model }: any) => void;
77
77
  getNestedPopulateOfNonLocalizedAttributes: (modelUID: any) => string[];
78
78
  };
79
+ 'ai-localizations': ({ strapi }: {
80
+ strapi: import("@strapi/types/dist/core").Strapi;
81
+ }) => {
82
+ isEnabled(): Promise<boolean>;
83
+ generateDocumentLocalizations({ model, document, }: {
84
+ model: import("@strapi/types/dist/uid").ContentType;
85
+ document: import("@strapi/types/dist/modules/documents").AnyDocument;
86
+ }): Promise<void>;
87
+ };
88
+ settings: ({ strapi }: {
89
+ strapi: import("@strapi/types/dist/core").Strapi;
90
+ }) => {
91
+ getSettings: () => Promise<import("yup/lib/object").AssertsShape<{
92
+ aiLocalizations: import("yup").BooleanSchema<boolean, Record<string, any>, boolean>;
93
+ }> | null>;
94
+ setSettings: (value: import("yup/lib/object").AssertsShape<{
95
+ aiLocalizations: import("yup").BooleanSchema<boolean, Record<string, any>, boolean>;
96
+ }>) => Promise<void>;
97
+ };
79
98
  };
80
99
  export default _default;
81
100
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,wBAQE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,wBAUE"}
@@ -0,0 +1,13 @@
1
+ import type { Core } from '@strapi/types';
2
+ import type { Settings } from '../validation/settings';
3
+ declare const createSettingsService: ({ strapi }: {
4
+ strapi: Core.Strapi;
5
+ }) => {
6
+ getSettings: () => Promise<import("yup/lib/object").AssertsShape<{
7
+ aiLocalizations: import("yup").BooleanSchema<boolean, Record<string, any>, boolean>;
8
+ }> | null>;
9
+ setSettings: (value: Settings) => Promise<void>;
10
+ };
11
+ export { createSettingsService };
12
+ export type SettingsService = ReturnType<typeof createSettingsService>;
13
+ //# sourceMappingURL=settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../../server/src/services/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,QAAA,MAAM,qBAAqB,eAAgB;IAAE,MAAM,EAAE,KAAK,MAAM,CAAA;CAAE;;;;yBASpC,QAAQ;CAQrC,CAAC;AAEF,OAAO,EAAE,qBAAqB,EAAE,CAAC;AACjC,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -5,14 +5,18 @@ import type { MetricsService } from '../services/metrics';
5
5
  import type { ISOLocalesService } from '../services/iso-locales';
6
6
  import type { LocalizationsService } from '../services/localizations';
7
7
  import type { SanitizeService } from '../services/sanitize';
8
+ import type { SettingsService } from '../services/settings';
9
+ import type { createAILocalizationsService } from '../services/ai-localizations';
8
10
  type S = {
9
11
  permissions: PermissionsService;
10
12
  metrics: MetricsService;
11
13
  locales: LocaleService;
12
14
  localizations: LocalizationsService;
15
+ settings: SettingsService;
13
16
  ['iso-locales']: ISOLocalesService;
14
17
  ['content-types']: ContentTypesService;
15
18
  sanitize: SanitizeService;
19
+ ['ai-localizations']: ReturnType<typeof createAILocalizationsService>;
16
20
  };
17
21
  declare const getCoreStore: () => {
18
22
  get(params?: Partial<{
@@ -38,6 +42,6 @@ declare const getCoreStore: () => {
38
42
  tag?: string | undefined;
39
43
  }> | undefined): Promise<void>;
40
44
  };
41
- declare const getService: <T extends keyof S>(name: T) => ReturnType<S[T]>;
45
+ declare const getService: <T extends keyof S>(name: T) => S[T] extends (...args: any) => any ? ReturnType<S[T]> : S[T];
42
46
  export { getService, getCoreStore };
43
47
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,KAAK,CAAC,GAAG;IACP,WAAW,EAAE,kBAAkB,CAAC;IAChC,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,aAAa,CAAC;IACvB,aAAa,EAAE,oBAAoB,CAAC;IACpC,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;IACnC,CAAC,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACvC,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;CAEjB,CAAC;AAGF,QAAA,MAAM,UAAU,4BAA6B,CAAC,KAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAE/D,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAEjF,KAAK,CAAC,GAAG;IACP,WAAW,EAAE,kBAAkB,CAAC;IAChC,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,aAAa,CAAC;IACvB,aAAa,EAAE,oBAAoB,CAAC;IACpC,QAAQ,EAAE,eAAe,CAAC;IAC1B,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;IACnC,CAAC,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACvC,QAAQ,EAAE,eAAe,CAAC;IAC1B,CAAC,kBAAkB,CAAC,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC;CACvE,CAAC;AAEF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;CAEjB,CAAC;AAGF,QAAA,MAAM,UAAU,4BACR,CAAC,KACN,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAE7D,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { yup } from '@strapi/utils';
2
+ declare const settingsSchema: import("yup/lib/object").OptionalObjectSchema<{
3
+ aiLocalizations: yup.BooleanSchema<boolean, Record<string, any>, boolean>;
4
+ }, Record<string, any>, import("yup/lib/object").TypeOfShape<{
5
+ aiLocalizations: yup.BooleanSchema<boolean, Record<string, any>, boolean>;
6
+ }>>;
7
+ declare const _default: (body: unknown, errorMessage?: string | undefined) => Promise<import("yup/lib/object").AssertsShape<{
8
+ aiLocalizations: yup.BooleanSchema<boolean, Record<string, any>, boolean>;
9
+ }>>;
10
+ export default _default;
11
+ export type Settings = yup.InferType<typeof settingsSchema>;
12
+ //# sourceMappingURL=settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../../server/src/validation/settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAqB,MAAM,eAAe,CAAC;AAEvD,QAAA,MAAM,cAAc;;;;GAElB,CAAC;;;;AAEH,wBAAiD;AAEjD,MAAM,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,cAAc,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../server/src/utils/index.ts"],"sourcesContent":["import type { LocaleService } from '../services/locales';\nimport type { PermissionsService } from '../services/permissions';\nimport type { ContentTypesService } from '../services/content-types';\nimport type { MetricsService } from '../services/metrics';\nimport type { ISOLocalesService } from '../services/iso-locales';\nimport type { LocalizationsService } from '../services/localizations';\nimport type { SanitizeService } from '../services/sanitize';\n\ntype S = {\n permissions: PermissionsService;\n metrics: MetricsService;\n locales: LocaleService;\n localizations: LocalizationsService;\n ['iso-locales']: ISOLocalesService;\n ['content-types']: ContentTypesService;\n sanitize: SanitizeService;\n};\n\nconst getCoreStore = () => {\n return strapi.store({ type: 'plugin', name: 'i18n' });\n};\n\n// retrieve a local service\nconst getService = <T extends keyof S>(name: T): ReturnType<S[T]> => {\n return strapi.plugin('i18n').service(name);\n};\n\nexport { getService, getCoreStore };\n"],"names":["getCoreStore","strapi","store","type","name","getService","plugin","service"],"mappings":";;AAkBA,MAAMA,YAAe,GAAA,IAAA;IACnB,OAAOC,MAAAA,CAAOC,KAAK,CAAC;QAAEC,IAAM,EAAA,QAAA;QAAUC,IAAM,EAAA;AAAO,KAAA,CAAA;AACrD;AAEA;AACA,MAAMC,aAAa,CAAoBD,IAAAA,GAAAA;AACrC,IAAA,OAAOH,MAAOK,CAAAA,MAAM,CAAC,MAAA,CAAA,CAAQC,OAAO,CAACH,IAAAA,CAAAA;AACvC;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../server/src/utils/index.ts"],"sourcesContent":["import type { LocaleService } from '../services/locales';\nimport type { PermissionsService } from '../services/permissions';\nimport type { ContentTypesService } from '../services/content-types';\nimport type { MetricsService } from '../services/metrics';\nimport type { ISOLocalesService } from '../services/iso-locales';\nimport type { LocalizationsService } from '../services/localizations';\nimport type { SanitizeService } from '../services/sanitize';\nimport type { SettingsService } from '../services/settings';\nimport type { createAILocalizationsService } from '../services/ai-localizations';\n\ntype S = {\n permissions: PermissionsService;\n metrics: MetricsService;\n locales: LocaleService;\n localizations: LocalizationsService;\n settings: SettingsService;\n ['iso-locales']: ISOLocalesService;\n ['content-types']: ContentTypesService;\n sanitize: SanitizeService;\n ['ai-localizations']: ReturnType<typeof createAILocalizationsService>;\n};\n\nconst getCoreStore = () => {\n return strapi.store({ type: 'plugin', name: 'i18n' });\n};\n\n// retrieve a local service\nconst getService = <T extends keyof S>(\n name: T\n): S[T] extends (...args: any) => any ? ReturnType<S[T]> : S[T] => {\n return strapi.plugin('i18n').service(name);\n};\n\nexport { getService, getCoreStore };\n"],"names":["getCoreStore","strapi","store","type","name","getService","plugin","service"],"mappings":";;AAsBA,MAAMA,YAAe,GAAA,IAAA;IACnB,OAAOC,MAAAA,CAAOC,KAAK,CAAC;QAAEC,IAAM,EAAA,QAAA;QAAUC,IAAM,EAAA;AAAO,KAAA,CAAA;AACrD;AAEA;AACA,MAAMC,aAAa,CACjBD,IAAAA,GAAAA;AAEA,IAAA,OAAOH,MAAOK,CAAAA,MAAM,CAAC,MAAA,CAAA,CAAQC,OAAO,CAACH,IAAAA,CAAAA;AACvC;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../server/src/utils/index.ts"],"sourcesContent":["import type { LocaleService } from '../services/locales';\nimport type { PermissionsService } from '../services/permissions';\nimport type { ContentTypesService } from '../services/content-types';\nimport type { MetricsService } from '../services/metrics';\nimport type { ISOLocalesService } from '../services/iso-locales';\nimport type { LocalizationsService } from '../services/localizations';\nimport type { SanitizeService } from '../services/sanitize';\n\ntype S = {\n permissions: PermissionsService;\n metrics: MetricsService;\n locales: LocaleService;\n localizations: LocalizationsService;\n ['iso-locales']: ISOLocalesService;\n ['content-types']: ContentTypesService;\n sanitize: SanitizeService;\n};\n\nconst getCoreStore = () => {\n return strapi.store({ type: 'plugin', name: 'i18n' });\n};\n\n// retrieve a local service\nconst getService = <T extends keyof S>(name: T): ReturnType<S[T]> => {\n return strapi.plugin('i18n').service(name);\n};\n\nexport { getService, getCoreStore };\n"],"names":["getCoreStore","strapi","store","type","name","getService","plugin","service"],"mappings":"AAkBA,MAAMA,YAAe,GAAA,IAAA;IACnB,OAAOC,MAAAA,CAAOC,KAAK,CAAC;QAAEC,IAAM,EAAA,QAAA;QAAUC,IAAM,EAAA;AAAO,KAAA,CAAA;AACrD;AAEA;AACA,MAAMC,aAAa,CAAoBD,IAAAA,GAAAA;AACrC,IAAA,OAAOH,MAAOK,CAAAA,MAAM,CAAC,MAAA,CAAA,CAAQC,OAAO,CAACH,IAAAA,CAAAA;AACvC;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../server/src/utils/index.ts"],"sourcesContent":["import type { LocaleService } from '../services/locales';\nimport type { PermissionsService } from '../services/permissions';\nimport type { ContentTypesService } from '../services/content-types';\nimport type { MetricsService } from '../services/metrics';\nimport type { ISOLocalesService } from '../services/iso-locales';\nimport type { LocalizationsService } from '../services/localizations';\nimport type { SanitizeService } from '../services/sanitize';\nimport type { SettingsService } from '../services/settings';\nimport type { createAILocalizationsService } from '../services/ai-localizations';\n\ntype S = {\n permissions: PermissionsService;\n metrics: MetricsService;\n locales: LocaleService;\n localizations: LocalizationsService;\n settings: SettingsService;\n ['iso-locales']: ISOLocalesService;\n ['content-types']: ContentTypesService;\n sanitize: SanitizeService;\n ['ai-localizations']: ReturnType<typeof createAILocalizationsService>;\n};\n\nconst getCoreStore = () => {\n return strapi.store({ type: 'plugin', name: 'i18n' });\n};\n\n// retrieve a local service\nconst getService = <T extends keyof S>(\n name: T\n): S[T] extends (...args: any) => any ? ReturnType<S[T]> : S[T] => {\n return strapi.plugin('i18n').service(name);\n};\n\nexport { getService, getCoreStore };\n"],"names":["getCoreStore","strapi","store","type","name","getService","plugin","service"],"mappings":"AAsBA,MAAMA,YAAe,GAAA,IAAA;IACnB,OAAOC,MAAAA,CAAOC,KAAK,CAAC;QAAEC,IAAM,EAAA,QAAA;QAAUC,IAAM,EAAA;AAAO,KAAA,CAAA;AACrD;AAEA;AACA,MAAMC,aAAa,CACjBD,IAAAA,GAAAA;AAEA,IAAA,OAAOH,MAAOK,CAAAA,MAAM,CAAC,MAAA,CAAA,CAAQC,OAAO,CAACH,IAAAA,CAAAA;AACvC;;;;"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ var utils = require('@strapi/utils');
4
+
5
+ const settingsSchema = utils.yup.object({
6
+ aiLocalizations: utils.yup.boolean().default(false)
7
+ });
8
+ var validateSettings = utils.validateYupSchema(settingsSchema);
9
+
10
+ module.exports = validateSettings;
11
+ //# sourceMappingURL=settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.js","sources":["../../../server/src/validation/settings.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\nconst settingsSchema = yup.object({\n aiLocalizations: yup.boolean().default(false),\n});\n\nexport default validateYupSchema(settingsSchema);\n\nexport type Settings = yup.InferType<typeof settingsSchema>;\n"],"names":["settingsSchema","yup","object","aiLocalizations","boolean","default","validateYupSchema"],"mappings":";;;;AAEA,MAAMA,cAAAA,GAAiBC,SAAIC,CAAAA,MAAM,CAAC;AAChCC,IAAAA,eAAAA,EAAiBF,SAAIG,CAAAA,OAAO,EAAGC,CAAAA,OAAO,CAAC,KAAA;AACzC,CAAA,CAAA;AAEA,uBAAeC,wBAAkBN,cAAgB,CAAA;;;;"}
@@ -0,0 +1,9 @@
1
+ import { yup, validateYupSchema } from '@strapi/utils';
2
+
3
+ const settingsSchema = yup.object({
4
+ aiLocalizations: yup.boolean().default(false)
5
+ });
6
+ var validateSettings = validateYupSchema(settingsSchema);
7
+
8
+ export { validateSettings as default };
9
+ //# sourceMappingURL=settings.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.mjs","sources":["../../../server/src/validation/settings.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\nconst settingsSchema = yup.object({\n aiLocalizations: yup.boolean().default(false),\n});\n\nexport default validateYupSchema(settingsSchema);\n\nexport type Settings = yup.InferType<typeof settingsSchema>;\n"],"names":["settingsSchema","yup","object","aiLocalizations","boolean","default","validateYupSchema"],"mappings":";;AAEA,MAAMA,cAAAA,GAAiBC,GAAIC,CAAAA,MAAM,CAAC;AAChCC,IAAAA,eAAAA,EAAiBF,GAAIG,CAAAA,OAAO,EAAGC,CAAAA,OAAO,CAAC,KAAA;AACzC,CAAA,CAAA;AAEA,uBAAeC,kBAAkBN,cAAgB,CAAA;;;;"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Used to store user configurations related to i18n.
3
+ * E.g the AI metadata flag for automatic translations.
4
+ */
5
+ import { errors } from '@strapi/utils';
6
+ import type { Utils } from '@strapi/types';
7
+ export interface Settings {
8
+ data: {
9
+ aiLocalizations?: boolean;
10
+ };
11
+ }
12
+ export type SettingsData = Settings['data'];
13
+ /**
14
+ * GET /i18n/settings
15
+ *
16
+ * Return the stored settings for the i18n plugin.
17
+ */
18
+ export declare namespace GetSettings {
19
+ interface Request {
20
+ query?: {};
21
+ }
22
+ interface Response {
23
+ data: Settings;
24
+ }
25
+ }
26
+ /**
27
+ * PUT /i18n/settings
28
+ *
29
+ * Update the stored settings
30
+ */
31
+ export declare namespace UpdateSettings {
32
+ interface Request {
33
+ body: Settings['data'];
34
+ }
35
+ type Response = Utils.OneOf<{
36
+ data: Settings['data'];
37
+ }, {
38
+ error?: errors.ApplicationError | errors.ValidationError;
39
+ }>;
40
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/i18n",
3
- "version": "0.0.0-experimental.e9303c99ae3c28b4b8421ab6971efae0748dd599",
3
+ "version": "0.0.0-experimental.e99215433ba1d6e5497350812df274f426dbdba3",
4
4
  "description": "Create read and update content in different languages, both from the Admin Panel and from the API",
5
5
  "repository": {
6
6
  "type": "git",
@@ -57,22 +57,24 @@
57
57
  },
58
58
  "dependencies": {
59
59
  "@reduxjs/toolkit": "1.9.7",
60
- "@strapi/design-system": "2.0.0-rc.23",
61
- "@strapi/icons": "2.0.0-rc.23",
62
- "@strapi/utils": "0.0.0-experimental.e9303c99ae3c28b4b8421ab6971efae0748dd599",
60
+ "@strapi/design-system": "2.0.0-rc.30",
61
+ "@strapi/icons": "2.0.0-rc.30",
62
+ "@strapi/utils": "0.0.0-experimental.e99215433ba1d6e5497350812df274f426dbdba3",
63
63
  "lodash": "4.17.21",
64
64
  "qs": "6.11.1",
65
65
  "react-intl": "6.6.2",
66
66
  "react-redux": "8.1.3",
67
- "yup": "0.32.9"
67
+ "yup": "0.32.9",
68
+ "zod": "3.25.67"
68
69
  },
69
70
  "devDependencies": {
70
- "@strapi/admin": "0.0.0-experimental.e9303c99ae3c28b4b8421ab6971efae0748dd599",
71
- "@strapi/admin-test-utils": "0.0.0-experimental.e9303c99ae3c28b4b8421ab6971efae0748dd599",
72
- "@strapi/content-manager": "0.0.0-experimental.e9303c99ae3c28b4b8421ab6971efae0748dd599",
73
- "@strapi/types": "0.0.0-experimental.e9303c99ae3c28b4b8421ab6971efae0748dd599",
71
+ "@strapi/admin": "0.0.0-experimental.e99215433ba1d6e5497350812df274f426dbdba3",
72
+ "@strapi/admin-test-utils": "0.0.0-experimental.e99215433ba1d6e5497350812df274f426dbdba3",
73
+ "@strapi/content-manager": "0.0.0-experimental.e99215433ba1d6e5497350812df274f426dbdba3",
74
+ "@strapi/types": "0.0.0-experimental.e99215433ba1d6e5497350812df274f426dbdba3",
74
75
  "@testing-library/react": "15.0.7",
75
76
  "@testing-library/user-event": "14.5.2",
77
+ "koa": "2.16.1",
76
78
  "msw": "1.3.0",
77
79
  "react": "18.3.1",
78
80
  "react-dom": "18.3.1",