@strapi/i18n 0.0.0-experimental.bffd3c1819cd08304e7d270e88b4973e9fcbc183 → 0.0.0-experimental.c23f51fc41b3ef5de081f427d07e87af93cdcb2c

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 (366) hide show
  1. package/dist/admin/components/BulkLocaleActionModal.js +262 -0
  2. package/dist/admin/components/BulkLocaleActionModal.js.map +1 -0
  3. package/dist/admin/components/BulkLocaleActionModal.mjs +260 -0
  4. package/dist/admin/components/BulkLocaleActionModal.mjs.map +1 -0
  5. package/dist/admin/components/CMHeaderActions.js +721 -0
  6. package/dist/admin/components/CMHeaderActions.js.map +1 -0
  7. package/dist/admin/components/CMHeaderActions.mjs +696 -0
  8. package/dist/admin/components/CMHeaderActions.mjs.map +1 -0
  9. package/dist/admin/components/CMListViewModalsAdditionalInformation.js +69 -0
  10. package/dist/admin/components/CMListViewModalsAdditionalInformation.js.map +1 -0
  11. package/dist/admin/components/CMListViewModalsAdditionalInformation.mjs +65 -0
  12. package/dist/admin/components/CMListViewModalsAdditionalInformation.mjs.map +1 -0
  13. package/dist/admin/components/CheckboxConfirmation.js +155 -0
  14. package/dist/admin/components/CheckboxConfirmation.js.map +1 -0
  15. package/dist/admin/components/CheckboxConfirmation.mjs +134 -0
  16. package/dist/admin/components/CheckboxConfirmation.mjs.map +1 -0
  17. package/dist/admin/components/CreateLocale.js +395 -0
  18. package/dist/admin/components/CreateLocale.js.map +1 -0
  19. package/dist/admin/components/CreateLocale.mjs +369 -0
  20. package/dist/admin/components/CreateLocale.mjs.map +1 -0
  21. package/dist/admin/components/DeleteLocale.js +90 -0
  22. package/dist/admin/components/DeleteLocale.js.map +1 -0
  23. package/dist/admin/components/DeleteLocale.mjs +69 -0
  24. package/dist/admin/components/DeleteLocale.mjs.map +1 -0
  25. package/dist/admin/components/EditLocale.js +212 -0
  26. package/dist/admin/components/EditLocale.js.map +1 -0
  27. package/dist/admin/components/EditLocale.mjs +190 -0
  28. package/dist/admin/components/EditLocale.mjs.map +1 -0
  29. package/dist/admin/components/LocaleListCell.js +82 -0
  30. package/dist/admin/components/LocaleListCell.js.map +1 -0
  31. package/dist/admin/components/LocaleListCell.mjs +80 -0
  32. package/dist/admin/components/LocaleListCell.mjs.map +1 -0
  33. package/dist/admin/components/LocalePicker.js +98 -0
  34. package/dist/admin/components/LocalePicker.js.map +1 -0
  35. package/dist/admin/components/LocalePicker.mjs +77 -0
  36. package/dist/admin/components/LocalePicker.mjs.map +1 -0
  37. package/dist/admin/components/LocaleTable.js +143 -0
  38. package/dist/admin/components/LocaleTable.js.map +1 -0
  39. package/dist/admin/components/LocaleTable.mjs +122 -0
  40. package/dist/admin/components/LocaleTable.mjs.map +1 -0
  41. package/dist/admin/constants.js +37 -0
  42. package/dist/admin/constants.js.map +1 -0
  43. package/dist/admin/constants.mjs +35 -0
  44. package/dist/admin/constants.mjs.map +1 -0
  45. package/dist/admin/contentManagerHooks/editView.js +106 -0
  46. package/dist/admin/contentManagerHooks/editView.js.map +1 -0
  47. package/dist/admin/contentManagerHooks/editView.mjs +85 -0
  48. package/dist/admin/contentManagerHooks/editView.mjs.map +1 -0
  49. package/dist/admin/contentManagerHooks/listView.js +43 -0
  50. package/dist/admin/contentManagerHooks/listView.js.map +1 -0
  51. package/dist/admin/contentManagerHooks/listView.mjs +41 -0
  52. package/dist/admin/contentManagerHooks/listView.mjs.map +1 -0
  53. package/dist/admin/contentReleasesHooks/releaseDetailsView.js +20 -0
  54. package/dist/admin/contentReleasesHooks/releaseDetailsView.js.map +1 -0
  55. package/dist/admin/contentReleasesHooks/releaseDetailsView.mjs +18 -0
  56. package/dist/admin/contentReleasesHooks/releaseDetailsView.mjs.map +1 -0
  57. package/dist/admin/hooks/useI18n.js +78 -0
  58. package/dist/admin/hooks/useI18n.js.map +1 -0
  59. package/dist/admin/hooks/useI18n.mjs +57 -0
  60. package/dist/admin/hooks/useI18n.mjs.map +1 -0
  61. package/dist/admin/index.js +226 -5
  62. package/dist/admin/index.js.map +1 -1
  63. package/dist/admin/index.mjs +202 -5
  64. package/dist/admin/index.mjs.map +1 -1
  65. package/dist/admin/middlewares/extendCTBAttributeInitialData.js +61 -0
  66. package/dist/admin/middlewares/extendCTBAttributeInitialData.js.map +1 -0
  67. package/dist/admin/middlewares/extendCTBAttributeInitialData.mjs +59 -0
  68. package/dist/admin/middlewares/extendCTBAttributeInitialData.mjs.map +1 -0
  69. package/dist/admin/middlewares/extendCTBInitialData.js +40 -0
  70. package/dist/admin/middlewares/extendCTBInitialData.js.map +1 -0
  71. package/dist/admin/middlewares/extendCTBInitialData.mjs +38 -0
  72. package/dist/admin/middlewares/extendCTBInitialData.mjs.map +1 -0
  73. package/dist/admin/middlewares/rbac-middleware.js +49 -0
  74. package/dist/admin/middlewares/rbac-middleware.js.map +1 -0
  75. package/dist/admin/middlewares/rbac-middleware.mjs +28 -0
  76. package/dist/admin/middlewares/rbac-middleware.mjs.map +1 -0
  77. package/dist/admin/pages/SettingsPage.js +107 -0
  78. package/dist/admin/pages/SettingsPage.js.map +1 -0
  79. package/dist/admin/pages/SettingsPage.mjs +85 -0
  80. package/dist/admin/pages/SettingsPage.mjs.map +1 -0
  81. package/dist/admin/pluginId.js +6 -0
  82. package/dist/admin/pluginId.js.map +1 -0
  83. package/dist/admin/pluginId.mjs +4 -0
  84. package/dist/admin/pluginId.mjs.map +1 -0
  85. package/dist/admin/services/api.js +12 -0
  86. package/dist/admin/services/api.js.map +1 -0
  87. package/dist/admin/services/api.mjs +10 -0
  88. package/dist/admin/services/api.mjs.map +1 -0
  89. package/dist/admin/services/locales.js +70 -0
  90. package/dist/admin/services/locales.js.map +1 -0
  91. package/dist/admin/services/locales.mjs +64 -0
  92. package/dist/admin/services/locales.mjs.map +1 -0
  93. package/dist/admin/services/relations.js +23 -0
  94. package/dist/admin/services/relations.js.map +1 -0
  95. package/dist/admin/services/relations.mjs +21 -0
  96. package/dist/admin/services/relations.mjs.map +1 -0
  97. package/dist/admin/src/components/CMHeaderActions.d.ts +1 -1
  98. package/dist/admin/src/components/tests/CreateLocale.test.d.ts +1 -0
  99. package/dist/admin/src/components/tests/DeleteLocale.test.d.ts +1 -0
  100. package/dist/admin/src/components/tests/EditLocale.test.d.ts +1 -0
  101. package/dist/admin/src/components/tests/LocaleListCell.test.d.ts +1 -0
  102. package/dist/admin/src/contentReleasesHooks/releaseDetailsView.d.ts +1 -1
  103. package/dist/admin/src/pages/tests/SettingsPage.test.d.ts +1 -0
  104. package/dist/admin/tests/server.d.ts +1 -0
  105. package/dist/admin/tests/utils.d.ts +6 -0
  106. package/dist/admin/translations/de.json.js +66 -0
  107. package/dist/admin/translations/de.json.js.map +1 -0
  108. package/dist/admin/translations/de.json.mjs +64 -0
  109. package/dist/admin/translations/de.json.mjs.map +1 -0
  110. package/dist/admin/translations/dk.json.js +66 -0
  111. package/dist/admin/translations/dk.json.js.map +1 -0
  112. package/dist/admin/translations/dk.json.mjs +64 -0
  113. package/dist/admin/translations/dk.json.mjs.map +1 -0
  114. package/dist/admin/translations/en.json.js +81 -0
  115. package/dist/admin/translations/en.json.js.map +1 -0
  116. package/dist/admin/translations/en.json.mjs +79 -0
  117. package/dist/admin/translations/en.json.mjs.map +1 -0
  118. package/dist/admin/translations/es.json.js +66 -0
  119. package/dist/admin/translations/es.json.js.map +1 -0
  120. package/dist/admin/translations/es.json.mjs +64 -0
  121. package/dist/admin/translations/es.json.mjs.map +1 -0
  122. package/dist/admin/translations/fr.json.js +66 -0
  123. package/dist/admin/translations/fr.json.js.map +1 -0
  124. package/dist/admin/translations/fr.json.mjs +64 -0
  125. package/dist/admin/translations/fr.json.mjs.map +1 -0
  126. package/dist/admin/translations/ko.json.js +65 -0
  127. package/dist/admin/translations/ko.json.js.map +1 -0
  128. package/dist/admin/translations/ko.json.mjs +63 -0
  129. package/dist/admin/translations/ko.json.mjs.map +1 -0
  130. package/dist/admin/translations/pl.json.js +66 -0
  131. package/dist/admin/translations/pl.json.js.map +1 -0
  132. package/dist/admin/translations/pl.json.mjs +64 -0
  133. package/dist/admin/translations/pl.json.mjs.map +1 -0
  134. package/dist/admin/translations/ru.json.js +68 -0
  135. package/dist/admin/translations/ru.json.js.map +1 -0
  136. package/dist/admin/translations/ru.json.mjs +66 -0
  137. package/dist/admin/translations/ru.json.mjs.map +1 -0
  138. package/dist/admin/translations/tr.json.js +66 -0
  139. package/dist/admin/translations/tr.json.js.map +1 -0
  140. package/dist/admin/translations/tr.json.mjs +64 -0
  141. package/dist/admin/translations/tr.json.mjs.map +1 -0
  142. package/dist/admin/translations/uk.json.js +82 -0
  143. package/dist/admin/translations/uk.json.js.map +1 -0
  144. package/dist/admin/translations/uk.json.mjs +80 -0
  145. package/dist/admin/translations/uk.json.mjs.map +1 -0
  146. package/dist/admin/translations/zh-Hans.json.js +57 -0
  147. package/dist/admin/translations/zh-Hans.json.js.map +1 -0
  148. package/dist/admin/translations/zh-Hans.json.mjs +55 -0
  149. package/dist/admin/translations/zh-Hans.json.mjs.map +1 -0
  150. package/dist/admin/translations/zh.json.js +66 -0
  151. package/dist/admin/translations/zh.json.js.map +1 -0
  152. package/dist/admin/translations/zh.json.mjs +64 -0
  153. package/dist/admin/translations/zh.json.mjs.map +1 -0
  154. package/dist/admin/utils/baseQuery.js +8 -0
  155. package/dist/admin/utils/baseQuery.js.map +1 -0
  156. package/dist/admin/utils/baseQuery.mjs +6 -0
  157. package/dist/admin/utils/baseQuery.mjs.map +1 -0
  158. package/dist/admin/utils/clean.js +70 -0
  159. package/dist/admin/utils/clean.js.map +1 -0
  160. package/dist/admin/utils/clean.mjs +68 -0
  161. package/dist/admin/utils/clean.mjs.map +1 -0
  162. package/dist/admin/utils/fields.js +29 -0
  163. package/dist/admin/utils/fields.js.map +1 -0
  164. package/dist/admin/utils/fields.mjs +26 -0
  165. package/dist/admin/utils/fields.mjs.map +1 -0
  166. package/dist/admin/utils/getTranslation.js +8 -0
  167. package/dist/admin/utils/getTranslation.js.map +1 -0
  168. package/dist/admin/utils/getTranslation.mjs +6 -0
  169. package/dist/admin/utils/getTranslation.mjs.map +1 -0
  170. package/dist/admin/utils/prefixPluginTranslations.js +11 -0
  171. package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
  172. package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
  173. package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
  174. package/dist/admin/utils/schemas.js +68 -0
  175. package/dist/admin/utils/schemas.js.map +1 -0
  176. package/dist/admin/utils/schemas.mjs +66 -0
  177. package/dist/admin/utils/schemas.mjs.map +1 -0
  178. package/dist/admin/utils/strings.js +6 -0
  179. package/dist/admin/utils/strings.js.map +1 -0
  180. package/dist/admin/utils/strings.mjs +4 -0
  181. package/dist/admin/utils/strings.mjs.map +1 -0
  182. package/dist/server/bootstrap.js +79 -0
  183. package/dist/server/bootstrap.js.map +1 -0
  184. package/dist/server/bootstrap.mjs +77 -0
  185. package/dist/server/bootstrap.mjs.map +1 -0
  186. package/dist/server/constants/index.js +29 -0
  187. package/dist/server/constants/index.js.map +1 -0
  188. package/dist/server/constants/index.mjs +25 -0
  189. package/dist/server/constants/index.mjs.map +1 -0
  190. package/dist/server/constants/iso-locales.json.js +2423 -0
  191. package/dist/server/constants/iso-locales.json.js.map +1 -0
  192. package/dist/server/constants/iso-locales.json.mjs +2421 -0
  193. package/dist/server/constants/iso-locales.json.mjs.map +1 -0
  194. package/dist/server/content-types/index.js +10 -0
  195. package/dist/server/content-types/index.js.map +1 -0
  196. package/dist/server/content-types/index.mjs +8 -0
  197. package/dist/server/content-types/index.mjs.map +1 -0
  198. package/dist/server/content-types/locale/index.js +10 -0
  199. package/dist/server/content-types/locale/index.js.map +1 -0
  200. package/dist/server/content-types/locale/index.mjs +8 -0
  201. package/dist/server/content-types/locale/index.mjs.map +1 -0
  202. package/dist/server/content-types/locale/schema.json.js +46 -0
  203. package/dist/server/content-types/locale/schema.json.js.map +1 -0
  204. package/dist/server/content-types/locale/schema.json.mjs +38 -0
  205. package/dist/server/content-types/locale/schema.json.mjs.map +1 -0
  206. package/dist/server/controllers/content-types.js +76 -0
  207. package/dist/server/controllers/content-types.js.map +1 -0
  208. package/dist/server/controllers/content-types.mjs +74 -0
  209. package/dist/server/controllers/content-types.mjs.map +1 -0
  210. package/dist/server/controllers/index.js +14 -0
  211. package/dist/server/controllers/index.js.map +1 -0
  212. package/dist/server/controllers/index.mjs +12 -0
  213. package/dist/server/controllers/index.mjs.map +1 -0
  214. package/dist/server/controllers/iso-locales.js +13 -0
  215. package/dist/server/controllers/iso-locales.js.map +1 -0
  216. package/dist/server/controllers/iso-locales.mjs +11 -0
  217. package/dist/server/controllers/iso-locales.mjs.map +1 -0
  218. package/dist/server/controllers/locales.js +108 -0
  219. package/dist/server/controllers/locales.js.map +1 -0
  220. package/dist/server/controllers/locales.mjs +87 -0
  221. package/dist/server/controllers/locales.mjs.map +1 -0
  222. package/dist/server/controllers/validate-locale-creation.js +47 -0
  223. package/dist/server/controllers/validate-locale-creation.js.map +1 -0
  224. package/dist/server/controllers/validate-locale-creation.mjs +45 -0
  225. package/dist/server/controllers/validate-locale-creation.mjs.map +1 -0
  226. package/dist/server/domain/locale.js +11 -0
  227. package/dist/server/domain/locale.js.map +1 -0
  228. package/dist/server/domain/locale.mjs +9 -0
  229. package/dist/server/domain/locale.mjs.map +1 -0
  230. package/dist/server/graphql.js +115 -0
  231. package/dist/server/graphql.js.map +1 -0
  232. package/dist/server/graphql.mjs +113 -0
  233. package/dist/server/graphql.mjs.map +1 -0
  234. package/dist/server/index.js +18 -3460
  235. package/dist/server/index.js.map +1 -1
  236. package/dist/server/index.mjs +17 -3443
  237. package/dist/server/index.mjs.map +1 -1
  238. package/dist/server/register.js +79 -0
  239. package/dist/server/register.js.map +1 -0
  240. package/dist/server/register.mjs +77 -0
  241. package/dist/server/register.mjs.map +1 -0
  242. package/dist/server/routes/admin.js +102 -0
  243. package/dist/server/routes/admin.js.map +1 -0
  244. package/dist/server/routes/admin.mjs +100 -0
  245. package/dist/server/routes/admin.mjs.map +1 -0
  246. package/dist/server/routes/content-api.js +15 -0
  247. package/dist/server/routes/content-api.js.map +1 -0
  248. package/dist/server/routes/content-api.mjs +13 -0
  249. package/dist/server/routes/content-api.mjs.map +1 -0
  250. package/dist/server/routes/index.js +12 -0
  251. package/dist/server/routes/index.js.map +1 -0
  252. package/dist/server/routes/index.mjs +10 -0
  253. package/dist/server/routes/index.mjs.map +1 -0
  254. package/dist/server/services/content-types.js +157 -0
  255. package/dist/server/services/content-types.js.map +1 -0
  256. package/dist/server/services/content-types.mjs +155 -0
  257. package/dist/server/services/content-types.mjs.map +1 -0
  258. package/dist/server/services/index.js +22 -0
  259. package/dist/server/services/index.js.map +1 -0
  260. package/dist/server/services/index.mjs +20 -0
  261. package/dist/server/services/index.mjs.map +1 -0
  262. package/dist/server/services/iso-locales.js +12 -0
  263. package/dist/server/services/iso-locales.js.map +1 -0
  264. package/dist/server/services/iso-locales.mjs +10 -0
  265. package/dist/server/services/iso-locales.mjs.map +1 -0
  266. package/dist/server/services/locales.js +114 -0
  267. package/dist/server/services/locales.js.map +1 -0
  268. package/dist/server/services/locales.mjs +112 -0
  269. package/dist/server/services/locales.mjs.map +1 -0
  270. package/dist/server/services/localizations.js +68 -0
  271. package/dist/server/services/localizations.js.map +1 -0
  272. package/dist/server/services/localizations.mjs +66 -0
  273. package/dist/server/services/localizations.mjs.map +1 -0
  274. package/dist/server/services/metrics.js +30 -0
  275. package/dist/server/services/metrics.js.map +1 -0
  276. package/dist/server/services/metrics.mjs +28 -0
  277. package/dist/server/services/metrics.mjs.map +1 -0
  278. package/dist/server/services/permissions/actions.js +136 -0
  279. package/dist/server/services/permissions/actions.js.map +1 -0
  280. package/dist/server/services/permissions/actions.mjs +134 -0
  281. package/dist/server/services/permissions/actions.mjs.map +1 -0
  282. package/dist/server/services/permissions/engine.js +52 -0
  283. package/dist/server/services/permissions/engine.js.map +1 -0
  284. package/dist/server/services/permissions/engine.mjs +50 -0
  285. package/dist/server/services/permissions/engine.mjs.map +1 -0
  286. package/dist/server/services/permissions/sections-builder.js +45 -0
  287. package/dist/server/services/permissions/sections-builder.js.map +1 -0
  288. package/dist/server/services/permissions/sections-builder.mjs +43 -0
  289. package/dist/server/services/permissions/sections-builder.mjs.map +1 -0
  290. package/dist/server/services/permissions.js +14 -0
  291. package/dist/server/services/permissions.js.map +1 -0
  292. package/dist/server/services/permissions.mjs +12 -0
  293. package/dist/server/services/permissions.mjs.map +1 -0
  294. package/dist/server/services/sanitize/index.js +34 -0
  295. package/dist/server/services/sanitize/index.js.map +1 -0
  296. package/dist/server/services/sanitize/index.mjs +32 -0
  297. package/dist/server/services/sanitize/index.mjs.map +1 -0
  298. package/dist/server/src/services/localizations.d.ts +1 -1
  299. package/dist/server/src/services/localizations.d.ts.map +1 -1
  300. package/dist/server/utils/index.js +16 -0
  301. package/dist/server/utils/index.js.map +1 -0
  302. package/dist/server/utils/index.mjs +13 -0
  303. package/dist/server/utils/index.mjs.map +1 -0
  304. package/dist/server/validation/content-types.js +18 -0
  305. package/dist/server/validation/content-types.js.map +1 -0
  306. package/dist/server/validation/content-types.mjs +16 -0
  307. package/dist/server/validation/content-types.mjs.map +1 -0
  308. package/dist/server/validation/locales.js +23 -0
  309. package/dist/server/validation/locales.js.map +1 -0
  310. package/dist/server/validation/locales.mjs +20 -0
  311. package/dist/server/validation/locales.mjs.map +1 -0
  312. package/dist/shared/contracts/content-manager.d.ts +1 -1
  313. package/dist/shared/contracts/shared.d.ts +1 -1
  314. package/package.json +14 -11
  315. package/dist/_chunks/SettingsPage-B-KzAqT3.mjs +0 -554
  316. package/dist/_chunks/SettingsPage-B-KzAqT3.mjs.map +0 -1
  317. package/dist/_chunks/SettingsPage-hyOi94O9.js +0 -573
  318. package/dist/_chunks/SettingsPage-hyOi94O9.js.map +0 -1
  319. package/dist/_chunks/de-BOhNX_-5.js +0 -65
  320. package/dist/_chunks/de-BOhNX_-5.js.map +0 -1
  321. package/dist/_chunks/de-D80IRBP9.mjs +0 -65
  322. package/dist/_chunks/de-D80IRBP9.mjs.map +0 -1
  323. package/dist/_chunks/dk-CJ6Zzz78.mjs +0 -65
  324. package/dist/_chunks/dk-CJ6Zzz78.mjs.map +0 -1
  325. package/dist/_chunks/dk-cjXm0p3m.js +0 -65
  326. package/dist/_chunks/dk-cjXm0p3m.js.map +0 -1
  327. package/dist/_chunks/en-BTyF7WVW.mjs +0 -80
  328. package/dist/_chunks/en-BTyF7WVW.mjs.map +0 -1
  329. package/dist/_chunks/en-UlC0jh2t.js +0 -80
  330. package/dist/_chunks/en-UlC0jh2t.js.map +0 -1
  331. package/dist/_chunks/es-V8WnPN7w.mjs +0 -65
  332. package/dist/_chunks/es-V8WnPN7w.mjs.map +0 -1
  333. package/dist/_chunks/es-hr9b_HLp.js +0 -65
  334. package/dist/_chunks/es-hr9b_HLp.js.map +0 -1
  335. package/dist/_chunks/fr-BFmBbE0H.js +0 -65
  336. package/dist/_chunks/fr-BFmBbE0H.js.map +0 -1
  337. package/dist/_chunks/fr-F94noFiV.mjs +0 -65
  338. package/dist/_chunks/fr-F94noFiV.mjs.map +0 -1
  339. package/dist/_chunks/index-BcYj5jo9.mjs +0 -1589
  340. package/dist/_chunks/index-BcYj5jo9.mjs.map +0 -1
  341. package/dist/_chunks/index-C8NzsAKp.js +0 -1610
  342. package/dist/_chunks/index-C8NzsAKp.js.map +0 -1
  343. package/dist/_chunks/ko-C40pNQ9b.js +0 -64
  344. package/dist/_chunks/ko-C40pNQ9b.js.map +0 -1
  345. package/dist/_chunks/ko-CF-P3Car.mjs +0 -64
  346. package/dist/_chunks/ko-CF-P3Car.mjs.map +0 -1
  347. package/dist/_chunks/pl-Dxr9RUmD.mjs +0 -65
  348. package/dist/_chunks/pl-Dxr9RUmD.mjs.map +0 -1
  349. package/dist/_chunks/pl-JtWBy-JQ.js +0 -65
  350. package/dist/_chunks/pl-JtWBy-JQ.js.map +0 -1
  351. package/dist/_chunks/ru-B-4sVwXN.mjs +0 -67
  352. package/dist/_chunks/ru-B-4sVwXN.mjs.map +0 -1
  353. package/dist/_chunks/ru-COSWt3Nu.js +0 -67
  354. package/dist/_chunks/ru-COSWt3Nu.js.map +0 -1
  355. package/dist/_chunks/tr-BVj1O5ch.js +0 -65
  356. package/dist/_chunks/tr-BVj1O5ch.js.map +0 -1
  357. package/dist/_chunks/tr-Ccu6Yj11.mjs +0 -65
  358. package/dist/_chunks/tr-Ccu6Yj11.mjs.map +0 -1
  359. package/dist/_chunks/zh-BIz395Ms.mjs +0 -65
  360. package/dist/_chunks/zh-BIz395Ms.mjs.map +0 -1
  361. package/dist/_chunks/zh-Hans-Bfo6_TCM.mjs +0 -56
  362. package/dist/_chunks/zh-Hans-Bfo6_TCM.mjs.map +0 -1
  363. package/dist/_chunks/zh-Hans-DIEm_EMC.js +0 -56
  364. package/dist/_chunks/zh-Hans-DIEm_EMC.js.map +0 -1
  365. package/dist/_chunks/zh-wkBPBkhc.js +0 -65
  366. package/dist/_chunks/zh-wkBPBkhc.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locales.mjs","sources":["../../../server/src/controllers/locales.ts"],"sourcesContent":["import * as utils from '@strapi/utils';\nimport { pick } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport { getService } from '../utils';\nimport { validateCreateLocaleInput, validateUpdateLocaleInput } from '../validation/locales';\nimport { formatLocale } from '../domain/locale';\n\nconst { setCreatorFields } = utils;\nconst { ApplicationError } = utils.errors;\n\nconst sanitizeLocale = (locale: any) => {\n const model = strapi.getModel('plugin::i18n.locale');\n\n return strapi.contentAPI.sanitize.output(locale, model);\n};\n\nconst controller: Core.Controller = {\n async listLocales(ctx) {\n const localesService = getService('locales');\n\n const locales = await localesService.find();\n const sanitizedLocales = await sanitizeLocale(locales);\n\n ctx.body = await localesService.setIsDefault(sanitizedLocales);\n },\n\n async createLocale(ctx) {\n const { user } = ctx.state;\n const body = ctx.request.body as any;\n const { isDefault, ...localeToCreate } = body;\n\n await validateCreateLocaleInput(body);\n\n const localesService = getService('locales');\n\n const existingLocale = await localesService.findByCode(body.code);\n if (existingLocale) {\n throw new ApplicationError('This locale already exists');\n }\n\n const localeToPersist = setCreatorFields({ user })(formatLocale(localeToCreate));\n\n const locale = await localesService.create(localeToPersist);\n\n if (isDefault) {\n await localesService.setDefaultLocale(locale);\n }\n\n const sanitizedLocale = await sanitizeLocale(locale);\n\n ctx.body = await localesService.setIsDefault(sanitizedLocale);\n },\n\n async updateLocale(ctx) {\n const { user } = ctx.state;\n const { id } = ctx.params;\n const body = ctx.request.body as any;\n const { isDefault, ...updates } = body;\n\n await validateUpdateLocaleInput(body);\n\n const localesService = getService('locales');\n\n const existingLocale = await localesService.findById(id);\n if (!existingLocale) {\n return ctx.notFound('locale.notFound');\n }\n\n const allowedParams = ['name'];\n const cleanUpdates = setCreatorFields({ user, isEdition: true })(pick(allowedParams, updates));\n\n const updatedLocale = await localesService.update({ id }, cleanUpdates);\n\n if (isDefault) {\n await localesService.setDefaultLocale(updatedLocale);\n }\n\n const sanitizedLocale = await sanitizeLocale(updatedLocale);\n\n ctx.body = await localesService.setIsDefault(sanitizedLocale);\n },\n\n async deleteLocale(ctx) {\n const { id } = ctx.params;\n\n const localesService = getService('locales');\n\n const existingLocale = await localesService.findById(id);\n if (!existingLocale) {\n return ctx.notFound('locale.notFound');\n }\n\n const defaultLocaleCode = await localesService.getDefaultLocale();\n if (existingLocale.code === defaultLocaleCode) {\n throw new ApplicationError('Cannot delete the default locale');\n }\n\n await localesService.delete({ id });\n\n const sanitizedLocale = await sanitizeLocale(existingLocale);\n\n ctx.body = await localesService.setIsDefault(sanitizedLocale);\n },\n};\n\nexport default controller;\n"],"names":["setCreatorFields","utils","ApplicationError","errors","sanitizeLocale","locale","model","strapi","getModel","contentAPI","sanitize","output","controller","listLocales","ctx","localesService","getService","locales","find","sanitizedLocales","body","setIsDefault","createLocale","user","state","request","isDefault","localeToCreate","validateCreateLocaleInput","existingLocale","findByCode","code","localeToPersist","formatLocale","create","setDefaultLocale","sanitizedLocale","updateLocale","id","params","updates","validateUpdateLocaleInput","findById","notFound","allowedParams","cleanUpdates","isEdition","pick","updatedLocale","update","deleteLocale","defaultLocaleCode","getDefaultLocale","delete"],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+ var utils = require('@strapi/utils');
5
+ var index = require('../utils/index.js');
6
+
7
+ const { ApplicationError } = utils.errors;
8
+ // TODO: v5 if implemented in the CM => delete this middleware
9
+ const validateLocaleCreation = async (ctx, next)=>{
10
+ const { model } = ctx.params;
11
+ const { query } = ctx.request;
12
+ // Prevent empty body
13
+ if (!ctx.request.body) {
14
+ ctx.request.body = {};
15
+ }
16
+ const body = ctx.request.body;
17
+ const { getValidLocale, isLocalizedContentType } = index.getService('content-types');
18
+ const modelDef = strapi.getModel(model);
19
+ if (!isLocalizedContentType(modelDef)) {
20
+ return next();
21
+ }
22
+ // Prevent empty string locale
23
+ const locale = fp.get('locale', query) || fp.get('locale', body) || undefined;
24
+ // cleanup to avoid creating duplicates in single types
25
+ ctx.request.query = {};
26
+ let entityLocale;
27
+ try {
28
+ entityLocale = await getValidLocale(locale);
29
+ } catch (e) {
30
+ throw new ApplicationError("This locale doesn't exist");
31
+ }
32
+ body.locale = entityLocale;
33
+ if (modelDef.kind === 'singleType') {
34
+ const entity = await strapi.entityService.findMany(modelDef.uid, {
35
+ locale: entityLocale
36
+ }); // TODO: add this type to entityService
37
+ ctx.request.query.locale = body.locale;
38
+ // updating
39
+ if (entity) {
40
+ return next();
41
+ }
42
+ }
43
+ return next();
44
+ };
45
+
46
+ module.exports = validateLocaleCreation;
47
+ //# sourceMappingURL=validate-locale-creation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-locale-creation.js","sources":["../../../server/src/controllers/validate-locale-creation.ts"],"sourcesContent":["import { get } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\nimport { getService } from '../utils';\n\nconst { ApplicationError } = errors;\n\n// TODO: v5 if implemented in the CM => delete this middleware\nconst validateLocaleCreation: Core.MiddlewareHandler = async (ctx, next) => {\n const { model } = ctx.params;\n const { query } = ctx.request;\n\n // Prevent empty body\n if (!ctx.request.body) {\n ctx.request.body = {};\n }\n\n const body = ctx.request.body as any;\n\n const { getValidLocale, isLocalizedContentType } = getService('content-types');\n\n const modelDef = strapi.getModel(model) as Struct.ContentTypeSchema;\n\n if (!isLocalizedContentType(modelDef)) {\n return next();\n }\n\n // Prevent empty string locale\n const locale = get('locale', query) || get('locale', body) || undefined;\n\n // cleanup to avoid creating duplicates in single types\n ctx.request.query = {};\n\n let entityLocale;\n try {\n entityLocale = await getValidLocale(locale);\n } catch (e) {\n throw new ApplicationError(\"This locale doesn't exist\");\n }\n\n body.locale = entityLocale;\n\n if (modelDef.kind === 'singleType') {\n const entity = await strapi.entityService.findMany(modelDef.uid, {\n locale: entityLocale,\n } as any); // TODO: add this type to entityService\n\n ctx.request.query.locale = body.locale;\n\n // updating\n if (entity) {\n return next();\n }\n }\n\n return next();\n};\n\nexport default validateLocaleCreation;\n"],"names":["ApplicationError","errors","validateLocaleCreation","ctx","next","model","params","query","request","body","getValidLocale","isLocalizedContentType","getService","modelDef","strapi","getModel","locale","get","undefined","entityLocale","e","kind","entity","entityService","findMany","uid"],"mappings":";;;;;;AAKA,MAAM,EAAEA,gBAAgB,EAAE,GAAGC,YAAAA;AAE7B;AACMC,MAAAA,sBAAAA,GAAiD,OAAOC,GAAKC,EAAAA,IAAAA,GAAAA;AACjE,IAAA,MAAM,EAAEC,KAAK,EAAE,GAAGF,IAAIG,MAAM;AAC5B,IAAA,MAAM,EAAEC,KAAK,EAAE,GAAGJ,IAAIK,OAAO;;AAG7B,IAAA,IAAI,CAACL,GAAAA,CAAIK,OAAO,CAACC,IAAI,EAAE;AACrBN,QAAAA,GAAAA,CAAIK,OAAO,CAACC,IAAI,GAAG,EAAC;AACtB;AAEA,IAAA,MAAMA,IAAON,GAAAA,GAAAA,CAAIK,OAAO,CAACC,IAAI;AAE7B,IAAA,MAAM,EAAEC,cAAc,EAAEC,sBAAsB,EAAE,GAAGC,gBAAW,CAAA,eAAA,CAAA;IAE9D,MAAMC,QAAAA,GAAWC,MAAOC,CAAAA,QAAQ,CAACV,KAAAA,CAAAA;IAEjC,IAAI,CAACM,uBAAuBE,QAAW,CAAA,EAAA;QACrC,OAAOT,IAAAA,EAAAA;AACT;;AAGA,IAAA,MAAMY,SAASC,MAAI,CAAA,QAAA,EAAUV,KAAUU,CAAAA,IAAAA,MAAAA,CAAI,UAAUR,IAASS,CAAAA,IAAAA,SAAAA;;AAG9Df,IAAAA,GAAAA,CAAIK,OAAO,CAACD,KAAK,GAAG,EAAC;IAErB,IAAIY,YAAAA;IACJ,IAAI;AACFA,QAAAA,YAAAA,GAAe,MAAMT,cAAeM,CAAAA,MAAAA,CAAAA;AACtC,KAAA,CAAE,OAAOI,CAAG,EAAA;AACV,QAAA,MAAM,IAAIpB,gBAAiB,CAAA,2BAAA,CAAA;AAC7B;AAEAS,IAAAA,IAAAA,CAAKO,MAAM,GAAGG,YAAAA;IAEd,IAAIN,QAAAA,CAASQ,IAAI,KAAK,YAAc,EAAA;QAClC,MAAMC,MAAAA,GAAS,MAAMR,MAAOS,CAAAA,aAAa,CAACC,QAAQ,CAACX,QAASY,CAAAA,GAAG,EAAE;YAC/DT,MAAQG,EAAAA;AACV,SAAA,CAAA,CAAA;AAEAhB,QAAAA,GAAAA,CAAIK,OAAO,CAACD,KAAK,CAACS,MAAM,GAAGP,KAAKO,MAAM;;AAGtC,QAAA,IAAIM,MAAQ,EAAA;YACV,OAAOlB,IAAAA,EAAAA;AACT;AACF;IAEA,OAAOA,IAAAA,EAAAA;AACT;;;;"}
@@ -0,0 +1,45 @@
1
+ import { get } from 'lodash/fp';
2
+ import { errors } from '@strapi/utils';
3
+ import { getService } from '../utils/index.mjs';
4
+
5
+ const { ApplicationError } = errors;
6
+ // TODO: v5 if implemented in the CM => delete this middleware
7
+ const validateLocaleCreation = async (ctx, next)=>{
8
+ const { model } = ctx.params;
9
+ const { query } = ctx.request;
10
+ // Prevent empty body
11
+ if (!ctx.request.body) {
12
+ ctx.request.body = {};
13
+ }
14
+ const body = ctx.request.body;
15
+ const { getValidLocale, isLocalizedContentType } = getService('content-types');
16
+ const modelDef = strapi.getModel(model);
17
+ if (!isLocalizedContentType(modelDef)) {
18
+ return next();
19
+ }
20
+ // Prevent empty string locale
21
+ const locale = get('locale', query) || get('locale', body) || undefined;
22
+ // cleanup to avoid creating duplicates in single types
23
+ ctx.request.query = {};
24
+ let entityLocale;
25
+ try {
26
+ entityLocale = await getValidLocale(locale);
27
+ } catch (e) {
28
+ throw new ApplicationError("This locale doesn't exist");
29
+ }
30
+ body.locale = entityLocale;
31
+ if (modelDef.kind === 'singleType') {
32
+ const entity = await strapi.entityService.findMany(modelDef.uid, {
33
+ locale: entityLocale
34
+ }); // TODO: add this type to entityService
35
+ ctx.request.query.locale = body.locale;
36
+ // updating
37
+ if (entity) {
38
+ return next();
39
+ }
40
+ }
41
+ return next();
42
+ };
43
+
44
+ export { validateLocaleCreation as default };
45
+ //# sourceMappingURL=validate-locale-creation.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-locale-creation.mjs","sources":["../../../server/src/controllers/validate-locale-creation.ts"],"sourcesContent":["import { get } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\nimport { getService } from '../utils';\n\nconst { ApplicationError } = errors;\n\n// TODO: v5 if implemented in the CM => delete this middleware\nconst validateLocaleCreation: Core.MiddlewareHandler = async (ctx, next) => {\n const { model } = ctx.params;\n const { query } = ctx.request;\n\n // Prevent empty body\n if (!ctx.request.body) {\n ctx.request.body = {};\n }\n\n const body = ctx.request.body as any;\n\n const { getValidLocale, isLocalizedContentType } = getService('content-types');\n\n const modelDef = strapi.getModel(model) as Struct.ContentTypeSchema;\n\n if (!isLocalizedContentType(modelDef)) {\n return next();\n }\n\n // Prevent empty string locale\n const locale = get('locale', query) || get('locale', body) || undefined;\n\n // cleanup to avoid creating duplicates in single types\n ctx.request.query = {};\n\n let entityLocale;\n try {\n entityLocale = await getValidLocale(locale);\n } catch (e) {\n throw new ApplicationError(\"This locale doesn't exist\");\n }\n\n body.locale = entityLocale;\n\n if (modelDef.kind === 'singleType') {\n const entity = await strapi.entityService.findMany(modelDef.uid, {\n locale: entityLocale,\n } as any); // TODO: add this type to entityService\n\n ctx.request.query.locale = body.locale;\n\n // updating\n if (entity) {\n return next();\n }\n }\n\n return next();\n};\n\nexport default validateLocaleCreation;\n"],"names":["ApplicationError","errors","validateLocaleCreation","ctx","next","model","params","query","request","body","getValidLocale","isLocalizedContentType","getService","modelDef","strapi","getModel","locale","get","undefined","entityLocale","e","kind","entity","entityService","findMany","uid"],"mappings":";;;;AAKA,MAAM,EAAEA,gBAAgB,EAAE,GAAGC,MAAAA;AAE7B;AACMC,MAAAA,sBAAAA,GAAiD,OAAOC,GAAKC,EAAAA,IAAAA,GAAAA;AACjE,IAAA,MAAM,EAAEC,KAAK,EAAE,GAAGF,IAAIG,MAAM;AAC5B,IAAA,MAAM,EAAEC,KAAK,EAAE,GAAGJ,IAAIK,OAAO;;AAG7B,IAAA,IAAI,CAACL,GAAAA,CAAIK,OAAO,CAACC,IAAI,EAAE;AACrBN,QAAAA,GAAAA,CAAIK,OAAO,CAACC,IAAI,GAAG,EAAC;AACtB;AAEA,IAAA,MAAMA,IAAON,GAAAA,GAAAA,CAAIK,OAAO,CAACC,IAAI;AAE7B,IAAA,MAAM,EAAEC,cAAc,EAAEC,sBAAsB,EAAE,GAAGC,UAAW,CAAA,eAAA,CAAA;IAE9D,MAAMC,QAAAA,GAAWC,MAAOC,CAAAA,QAAQ,CAACV,KAAAA,CAAAA;IAEjC,IAAI,CAACM,uBAAuBE,QAAW,CAAA,EAAA;QACrC,OAAOT,IAAAA,EAAAA;AACT;;AAGA,IAAA,MAAMY,SAASC,GAAI,CAAA,QAAA,EAAUV,KAAUU,CAAAA,IAAAA,GAAAA,CAAI,UAAUR,IAASS,CAAAA,IAAAA,SAAAA;;AAG9Df,IAAAA,GAAAA,CAAIK,OAAO,CAACD,KAAK,GAAG,EAAC;IAErB,IAAIY,YAAAA;IACJ,IAAI;AACFA,QAAAA,YAAAA,GAAe,MAAMT,cAAeM,CAAAA,MAAAA,CAAAA;AACtC,KAAA,CAAE,OAAOI,CAAG,EAAA;AACV,QAAA,MAAM,IAAIpB,gBAAiB,CAAA,2BAAA,CAAA;AAC7B;AAEAS,IAAAA,IAAAA,CAAKO,MAAM,GAAGG,YAAAA;IAEd,IAAIN,QAAAA,CAASQ,IAAI,KAAK,YAAc,EAAA;QAClC,MAAMC,MAAAA,GAAS,MAAMR,MAAOS,CAAAA,aAAa,CAACC,QAAQ,CAACX,QAASY,CAAAA,GAAG,EAAE;YAC/DT,MAAQG,EAAAA;AACV,SAAA,CAAA,CAAA;AAEAhB,QAAAA,GAAAA,CAAIK,OAAO,CAACD,KAAK,CAACS,MAAM,GAAGP,KAAKO,MAAM;;AAGtC,QAAA,IAAIM,MAAQ,EAAA;YACV,OAAOlB,IAAAA,EAAAA;AACT;AACF;IAEA,OAAOA,IAAAA,EAAAA;AACT;;;;"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ const formatLocale = (locale)=>{
4
+ return {
5
+ ...locale,
6
+ name: locale.name || null
7
+ };
8
+ };
9
+
10
+ exports.formatLocale = formatLocale;
11
+ //# sourceMappingURL=locale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.js","sources":["../../../server/src/domain/locale.ts"],"sourcesContent":["const formatLocale = (locale: { name: string; code: string; isDefault: boolean }) => {\n return {\n ...locale,\n name: locale.name || null,\n };\n};\n\nexport { formatLocale };\n"],"names":["formatLocale","locale","name"],"mappings":";;AAAA,MAAMA,eAAe,CAACC,MAAAA,GAAAA;IACpB,OAAO;AACL,QAAA,GAAGA,MAAM;QACTC,IAAMD,EAAAA,MAAAA,CAAOC,IAAI,IAAI;AACvB,KAAA;AACF;;;;"}
@@ -0,0 +1,9 @@
1
+ const formatLocale = (locale)=>{
2
+ return {
3
+ ...locale,
4
+ name: locale.name || null
5
+ };
6
+ };
7
+
8
+ export { formatLocale };
9
+ //# sourceMappingURL=locale.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.mjs","sources":["../../../server/src/domain/locale.ts"],"sourcesContent":["const formatLocale = (locale: { name: string; code: string; isDefault: boolean }) => {\n return {\n ...locale,\n name: locale.name || null,\n };\n};\n\nexport { formatLocale };\n"],"names":["formatLocale","locale","name"],"mappings":"AAAA,MAAMA,eAAe,CAACC,MAAAA,GAAAA;IACpB,OAAO;AACL,QAAA,GAAGA,MAAM;QACTC,IAAMD,EAAAA,MAAAA,CAAOC,IAAI,IAAI;AACvB,KAAA;AACF;;;;"}
@@ -0,0 +1,115 @@
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+ var utils = require('@strapi/utils');
5
+
6
+ const { ValidationError } = utils.errors;
7
+ const LOCALE_SCALAR_TYPENAME = 'I18NLocaleCode';
8
+ const LOCALE_ARG_PLUGIN_NAME = 'I18NLocaleArg';
9
+ var graphqlProvider = (({ strapi: strapi1 })=>({
10
+ register () {
11
+ const { service: getGraphQLService } = strapi1.plugin('graphql');
12
+ const { service: getI18NService } = strapi1.plugin('i18n');
13
+ const { isLocalizedContentType } = getI18NService('content-types');
14
+ const extensionService = getGraphQLService('extension');
15
+ extensionService.shadowCRUD('plugin::i18n.locale').disableMutations();
16
+ // Disable unwanted fields for localized content types
17
+ Object.entries(strapi1.contentTypes).forEach(([uid, ct])=>{
18
+ if (isLocalizedContentType(ct)) {
19
+ // Disable locale field in localized inputs
20
+ extensionService.shadowCRUD(uid).field('locale').disableInput();
21
+ // Disable localizations field in localized inputs
22
+ extensionService.shadowCRUD(uid).field('localizations').disableInput();
23
+ }
24
+ });
25
+ extensionService.use(({ nexus, typeRegistry })=>{
26
+ const i18nLocaleArgPlugin = getI18nLocaleArgPlugin({
27
+ nexus,
28
+ typeRegistry
29
+ });
30
+ const i18nLocaleScalar = getLocaleScalar({
31
+ nexus
32
+ });
33
+ return {
34
+ plugins: [
35
+ i18nLocaleArgPlugin
36
+ ],
37
+ types: [
38
+ i18nLocaleScalar
39
+ ],
40
+ resolversConfig: {
41
+ // Modify the default scope associated to find and findOne locale queries to match the actual action name
42
+ 'Query.i18NLocale': {
43
+ auth: {
44
+ scope: 'plugin::i18n.locales.listLocales'
45
+ }
46
+ },
47
+ 'Query.i18NLocales': {
48
+ auth: {
49
+ scope: 'plugin::i18n.locales.listLocales'
50
+ }
51
+ }
52
+ }
53
+ };
54
+ });
55
+ }
56
+ }));
57
+ const getLocaleScalar = ({ nexus })=>{
58
+ const { service: getI18NService } = strapi.plugin('i18n');
59
+ const locales = getI18NService('iso-locales').getIsoLocales();
60
+ return nexus.scalarType({
61
+ name: LOCALE_SCALAR_TYPENAME,
62
+ description: 'A string used to identify an i18n locale',
63
+ serialize: fp.identity,
64
+ parseValue: fp.identity,
65
+ parseLiteral (ast) {
66
+ if (ast.kind !== 'StringValue') {
67
+ throw new ValidationError('Locale cannot represent non string type');
68
+ }
69
+ const isValidLocale = ast.value === '*' || locales.find(fp.propEq('code', ast.value));
70
+ if (!isValidLocale) {
71
+ throw new ValidationError('Unknown locale supplied');
72
+ }
73
+ return ast.value;
74
+ }
75
+ });
76
+ };
77
+ const getI18nLocaleArgPlugin = ({ nexus, typeRegistry })=>{
78
+ const { service: getI18NService } = strapi.plugin('i18n');
79
+ const { isLocalizedContentType } = getI18NService('content-types');
80
+ return nexus.plugin({
81
+ name: LOCALE_ARG_PLUGIN_NAME,
82
+ onAddOutputField (config) {
83
+ // Add the locale arg to the queries on localized CTs
84
+ const { parentType } = config;
85
+ // Only target queries or mutations
86
+ if (parentType !== 'Query' && parentType !== 'Mutation') {
87
+ return;
88
+ }
89
+ let contentType;
90
+ if (config?.extensions?.strapi?.contentType) {
91
+ contentType = config.extensions.strapi.contentType;
92
+ } else {
93
+ const registryType = typeRegistry.get(config.type);
94
+ if (!registryType) {
95
+ return;
96
+ }
97
+ contentType = registryType.config.contentType;
98
+ }
99
+ // Ignore non-localized content types
100
+ if (!isLocalizedContentType(contentType)) {
101
+ return;
102
+ }
103
+ if (!config.args) {
104
+ config.args = {};
105
+ }
106
+ config.args.locale = nexus.arg({
107
+ type: LOCALE_SCALAR_TYPENAME,
108
+ description: 'The locale to use for the query'
109
+ });
110
+ }
111
+ });
112
+ };
113
+
114
+ module.exports = graphqlProvider;
115
+ //# sourceMappingURL=graphql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql.js","sources":["../../server/src/graphql.ts"],"sourcesContent":["import { propEq, identity } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst { ValidationError } = errors;\n\nconst LOCALE_SCALAR_TYPENAME = 'I18NLocaleCode';\nconst LOCALE_ARG_PLUGIN_NAME = 'I18NLocaleArg';\n\nexport default ({ strapi }: { strapi: Core.Strapi }) => ({\n register() {\n const { service: getGraphQLService } = strapi.plugin('graphql');\n const { service: getI18NService } = strapi.plugin('i18n');\n\n const { isLocalizedContentType } = getI18NService('content-types');\n\n const extensionService = getGraphQLService('extension');\n\n extensionService.shadowCRUD('plugin::i18n.locale').disableMutations();\n\n // Disable unwanted fields for localized content types\n Object.entries(strapi.contentTypes).forEach(([uid, ct]) => {\n if (isLocalizedContentType(ct)) {\n // Disable locale field in localized inputs\n extensionService.shadowCRUD(uid).field('locale').disableInput();\n\n // Disable localizations field in localized inputs\n extensionService.shadowCRUD(uid).field('localizations').disableInput();\n }\n });\n\n extensionService.use(({ nexus, typeRegistry }: any) => {\n const i18nLocaleArgPlugin = getI18nLocaleArgPlugin({ nexus, typeRegistry });\n const i18nLocaleScalar = getLocaleScalar({ nexus });\n return {\n plugins: [i18nLocaleArgPlugin],\n types: [i18nLocaleScalar],\n\n resolversConfig: {\n // Modify the default scope associated to find and findOne locale queries to match the actual action name\n 'Query.i18NLocale': { auth: { scope: 'plugin::i18n.locales.listLocales' } },\n 'Query.i18NLocales': { auth: { scope: 'plugin::i18n.locales.listLocales' } },\n },\n };\n });\n },\n});\n\nconst getLocaleScalar = ({ nexus }: any) => {\n const { service: getI18NService } = strapi.plugin('i18n');\n\n const locales = getI18NService('iso-locales').getIsoLocales();\n\n return nexus.scalarType({\n name: LOCALE_SCALAR_TYPENAME,\n\n description: 'A string used to identify an i18n locale',\n\n serialize: identity,\n parseValue: identity,\n\n parseLiteral(ast: any) {\n if (ast.kind !== 'StringValue') {\n throw new ValidationError('Locale cannot represent non string type');\n }\n\n const isValidLocale = ast.value === '*' || locales.find(propEq('code', ast.value));\n\n if (!isValidLocale) {\n throw new ValidationError('Unknown locale supplied');\n }\n\n return ast.value;\n },\n });\n};\n\nconst getI18nLocaleArgPlugin = ({ nexus, typeRegistry }: any) => {\n const { service: getI18NService } = strapi.plugin('i18n');\n\n const { isLocalizedContentType } = getI18NService('content-types');\n\n return nexus.plugin({\n name: LOCALE_ARG_PLUGIN_NAME,\n\n onAddOutputField(config: any) {\n // Add the locale arg to the queries on localized CTs\n\n const { parentType } = config;\n\n // Only target queries or mutations\n if (parentType !== 'Query' && parentType !== 'Mutation') {\n return;\n }\n\n let contentType;\n\n if (config?.extensions?.strapi?.contentType) {\n contentType = config.extensions.strapi.contentType;\n } else {\n const registryType = typeRegistry.get(config.type);\n\n if (!registryType) {\n return;\n }\n\n contentType = registryType.config.contentType;\n }\n\n // Ignore non-localized content types\n if (!isLocalizedContentType(contentType)) {\n return;\n }\n\n if (!config.args) {\n config.args = {};\n }\n\n config.args.locale = nexus.arg({\n type: LOCALE_SCALAR_TYPENAME,\n description: 'The locale to use for the query',\n });\n },\n });\n};\n"],"names":["ValidationError","errors","LOCALE_SCALAR_TYPENAME","LOCALE_ARG_PLUGIN_NAME","strapi","register","service","getGraphQLService","plugin","getI18NService","isLocalizedContentType","extensionService","shadowCRUD","disableMutations","Object","entries","contentTypes","forEach","uid","ct","field","disableInput","use","nexus","typeRegistry","i18nLocaleArgPlugin","getI18nLocaleArgPlugin","i18nLocaleScalar","getLocaleScalar","plugins","types","resolversConfig","auth","scope","locales","getIsoLocales","scalarType","name","description","serialize","identity","parseValue","parseLiteral","ast","kind","isValidLocale","value","find","propEq","onAddOutputField","config","parentType","contentType","extensions","registryType","get","type","args","locale","arg"],"mappings":"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"}
@@ -0,0 +1,113 @@
1
+ import { identity, propEq } from 'lodash/fp';
2
+ import { errors } from '@strapi/utils';
3
+
4
+ const { ValidationError } = errors;
5
+ const LOCALE_SCALAR_TYPENAME = 'I18NLocaleCode';
6
+ const LOCALE_ARG_PLUGIN_NAME = 'I18NLocaleArg';
7
+ var graphqlProvider = (({ strapi: strapi1 })=>({
8
+ register () {
9
+ const { service: getGraphQLService } = strapi1.plugin('graphql');
10
+ const { service: getI18NService } = strapi1.plugin('i18n');
11
+ const { isLocalizedContentType } = getI18NService('content-types');
12
+ const extensionService = getGraphQLService('extension');
13
+ extensionService.shadowCRUD('plugin::i18n.locale').disableMutations();
14
+ // Disable unwanted fields for localized content types
15
+ Object.entries(strapi1.contentTypes).forEach(([uid, ct])=>{
16
+ if (isLocalizedContentType(ct)) {
17
+ // Disable locale field in localized inputs
18
+ extensionService.shadowCRUD(uid).field('locale').disableInput();
19
+ // Disable localizations field in localized inputs
20
+ extensionService.shadowCRUD(uid).field('localizations').disableInput();
21
+ }
22
+ });
23
+ extensionService.use(({ nexus, typeRegistry })=>{
24
+ const i18nLocaleArgPlugin = getI18nLocaleArgPlugin({
25
+ nexus,
26
+ typeRegistry
27
+ });
28
+ const i18nLocaleScalar = getLocaleScalar({
29
+ nexus
30
+ });
31
+ return {
32
+ plugins: [
33
+ i18nLocaleArgPlugin
34
+ ],
35
+ types: [
36
+ i18nLocaleScalar
37
+ ],
38
+ resolversConfig: {
39
+ // Modify the default scope associated to find and findOne locale queries to match the actual action name
40
+ 'Query.i18NLocale': {
41
+ auth: {
42
+ scope: 'plugin::i18n.locales.listLocales'
43
+ }
44
+ },
45
+ 'Query.i18NLocales': {
46
+ auth: {
47
+ scope: 'plugin::i18n.locales.listLocales'
48
+ }
49
+ }
50
+ }
51
+ };
52
+ });
53
+ }
54
+ }));
55
+ const getLocaleScalar = ({ nexus })=>{
56
+ const { service: getI18NService } = strapi.plugin('i18n');
57
+ const locales = getI18NService('iso-locales').getIsoLocales();
58
+ return nexus.scalarType({
59
+ name: LOCALE_SCALAR_TYPENAME,
60
+ description: 'A string used to identify an i18n locale',
61
+ serialize: identity,
62
+ parseValue: identity,
63
+ parseLiteral (ast) {
64
+ if (ast.kind !== 'StringValue') {
65
+ throw new ValidationError('Locale cannot represent non string type');
66
+ }
67
+ const isValidLocale = ast.value === '*' || locales.find(propEq('code', ast.value));
68
+ if (!isValidLocale) {
69
+ throw new ValidationError('Unknown locale supplied');
70
+ }
71
+ return ast.value;
72
+ }
73
+ });
74
+ };
75
+ const getI18nLocaleArgPlugin = ({ nexus, typeRegistry })=>{
76
+ const { service: getI18NService } = strapi.plugin('i18n');
77
+ const { isLocalizedContentType } = getI18NService('content-types');
78
+ return nexus.plugin({
79
+ name: LOCALE_ARG_PLUGIN_NAME,
80
+ onAddOutputField (config) {
81
+ // Add the locale arg to the queries on localized CTs
82
+ const { parentType } = config;
83
+ // Only target queries or mutations
84
+ if (parentType !== 'Query' && parentType !== 'Mutation') {
85
+ return;
86
+ }
87
+ let contentType;
88
+ if (config?.extensions?.strapi?.contentType) {
89
+ contentType = config.extensions.strapi.contentType;
90
+ } else {
91
+ const registryType = typeRegistry.get(config.type);
92
+ if (!registryType) {
93
+ return;
94
+ }
95
+ contentType = registryType.config.contentType;
96
+ }
97
+ // Ignore non-localized content types
98
+ if (!isLocalizedContentType(contentType)) {
99
+ return;
100
+ }
101
+ if (!config.args) {
102
+ config.args = {};
103
+ }
104
+ config.args.locale = nexus.arg({
105
+ type: LOCALE_SCALAR_TYPENAME,
106
+ description: 'The locale to use for the query'
107
+ });
108
+ }
109
+ });
110
+ };
111
+
112
+ export { graphqlProvider as default };
113
+ //# sourceMappingURL=graphql.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql.mjs","sources":["../../server/src/graphql.ts"],"sourcesContent":["import { propEq, identity } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst { ValidationError } = errors;\n\nconst LOCALE_SCALAR_TYPENAME = 'I18NLocaleCode';\nconst LOCALE_ARG_PLUGIN_NAME = 'I18NLocaleArg';\n\nexport default ({ strapi }: { strapi: Core.Strapi }) => ({\n register() {\n const { service: getGraphQLService } = strapi.plugin('graphql');\n const { service: getI18NService } = strapi.plugin('i18n');\n\n const { isLocalizedContentType } = getI18NService('content-types');\n\n const extensionService = getGraphQLService('extension');\n\n extensionService.shadowCRUD('plugin::i18n.locale').disableMutations();\n\n // Disable unwanted fields for localized content types\n Object.entries(strapi.contentTypes).forEach(([uid, ct]) => {\n if (isLocalizedContentType(ct)) {\n // Disable locale field in localized inputs\n extensionService.shadowCRUD(uid).field('locale').disableInput();\n\n // Disable localizations field in localized inputs\n extensionService.shadowCRUD(uid).field('localizations').disableInput();\n }\n });\n\n extensionService.use(({ nexus, typeRegistry }: any) => {\n const i18nLocaleArgPlugin = getI18nLocaleArgPlugin({ nexus, typeRegistry });\n const i18nLocaleScalar = getLocaleScalar({ nexus });\n return {\n plugins: [i18nLocaleArgPlugin],\n types: [i18nLocaleScalar],\n\n resolversConfig: {\n // Modify the default scope associated to find and findOne locale queries to match the actual action name\n 'Query.i18NLocale': { auth: { scope: 'plugin::i18n.locales.listLocales' } },\n 'Query.i18NLocales': { auth: { scope: 'plugin::i18n.locales.listLocales' } },\n },\n };\n });\n },\n});\n\nconst getLocaleScalar = ({ nexus }: any) => {\n const { service: getI18NService } = strapi.plugin('i18n');\n\n const locales = getI18NService('iso-locales').getIsoLocales();\n\n return nexus.scalarType({\n name: LOCALE_SCALAR_TYPENAME,\n\n description: 'A string used to identify an i18n locale',\n\n serialize: identity,\n parseValue: identity,\n\n parseLiteral(ast: any) {\n if (ast.kind !== 'StringValue') {\n throw new ValidationError('Locale cannot represent non string type');\n }\n\n const isValidLocale = ast.value === '*' || locales.find(propEq('code', ast.value));\n\n if (!isValidLocale) {\n throw new ValidationError('Unknown locale supplied');\n }\n\n return ast.value;\n },\n });\n};\n\nconst getI18nLocaleArgPlugin = ({ nexus, typeRegistry }: any) => {\n const { service: getI18NService } = strapi.plugin('i18n');\n\n const { isLocalizedContentType } = getI18NService('content-types');\n\n return nexus.plugin({\n name: LOCALE_ARG_PLUGIN_NAME,\n\n onAddOutputField(config: any) {\n // Add the locale arg to the queries on localized CTs\n\n const { parentType } = config;\n\n // Only target queries or mutations\n if (parentType !== 'Query' && parentType !== 'Mutation') {\n return;\n }\n\n let contentType;\n\n if (config?.extensions?.strapi?.contentType) {\n contentType = config.extensions.strapi.contentType;\n } else {\n const registryType = typeRegistry.get(config.type);\n\n if (!registryType) {\n return;\n }\n\n contentType = registryType.config.contentType;\n }\n\n // Ignore non-localized content types\n if (!isLocalizedContentType(contentType)) {\n return;\n }\n\n if (!config.args) {\n config.args = {};\n }\n\n config.args.locale = nexus.arg({\n type: LOCALE_SCALAR_TYPENAME,\n description: 'The locale to use for the query',\n });\n },\n });\n};\n"],"names":["ValidationError","errors","LOCALE_SCALAR_TYPENAME","LOCALE_ARG_PLUGIN_NAME","strapi","register","service","getGraphQLService","plugin","getI18NService","isLocalizedContentType","extensionService","shadowCRUD","disableMutations","Object","entries","contentTypes","forEach","uid","ct","field","disableInput","use","nexus","typeRegistry","i18nLocaleArgPlugin","getI18nLocaleArgPlugin","i18nLocaleScalar","getLocaleScalar","plugins","types","resolversConfig","auth","scope","locales","getIsoLocales","scalarType","name","description","serialize","identity","parseValue","parseLiteral","ast","kind","isValidLocale","value","find","propEq","onAddOutputField","config","parentType","contentType","extensions","registryType","get","type","args","locale","arg"],"mappings":"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"}