@strapi/plugin-documentation 5.0.0-beta.0 → 5.0.0-beta.10

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 (332) hide show
  1. package/README.md +0 -1
  2. package/dist/_chunks/{index-D1KkfApT.js → App-Cmiagsr-.js} +93 -53
  3. package/dist/_chunks/App-Cmiagsr-.js.map +1 -0
  4. package/dist/_chunks/{index-7xstUX8_.mjs → App-pk6g9tYL.mjs} +69 -46
  5. package/dist/_chunks/App-pk6g9tYL.mjs.map +1 -0
  6. package/dist/_chunks/Settings-CqLmbMfv.mjs +223 -0
  7. package/dist/_chunks/Settings-CqLmbMfv.mjs.map +1 -0
  8. package/dist/_chunks/Settings-MmkmHoxg.js +243 -0
  9. package/dist/_chunks/Settings-MmkmHoxg.js.map +1 -0
  10. package/dist/_chunks/{ar-4yWQcJB-.js → ar-CkqTE6jh.js} +1 -1
  11. package/dist/_chunks/ar-CkqTE6jh.js.map +1 -0
  12. package/dist/_chunks/{ar-dlnabvQE.mjs → ar-ckp9T43y.mjs} +1 -1
  13. package/dist/_chunks/ar-ckp9T43y.mjs.map +1 -0
  14. package/dist/_chunks/{cs-knLCHelx.js → cs-BbyKo6Hc.js} +1 -1
  15. package/dist/_chunks/cs-BbyKo6Hc.js.map +1 -0
  16. package/dist/_chunks/{cs-x2Pr-Y38.mjs → cs-ciLYCxgd.mjs} +1 -1
  17. package/dist/_chunks/cs-ciLYCxgd.mjs.map +1 -0
  18. package/dist/_chunks/{de-D0HJjv1r.js → de-CHwC0A85.js} +1 -1
  19. package/dist/_chunks/de-CHwC0A85.js.map +1 -0
  20. package/dist/_chunks/{de-10J3uf4y.mjs → de-DqkAUMvP.mjs} +1 -1
  21. package/dist/_chunks/de-DqkAUMvP.mjs.map +1 -0
  22. package/dist/_chunks/{dk-_8JEfZdj.mjs → dk-DgCq8mF-.mjs} +1 -1
  23. package/dist/_chunks/dk-DgCq8mF-.mjs.map +1 -0
  24. package/dist/_chunks/{dk-OGCIxZ4f.js → dk-qlI2J6S0.js} +1 -1
  25. package/dist/_chunks/dk-qlI2J6S0.js.map +1 -0
  26. package/dist/_chunks/{en-YgFnjikD.js → en-Cfq2Inmo.js} +1 -1
  27. package/dist/_chunks/en-Cfq2Inmo.js.map +1 -0
  28. package/dist/_chunks/{en-V4ac9UMW.mjs → en-DfCC9sZn.mjs} +1 -1
  29. package/dist/_chunks/en-DfCC9sZn.mjs.map +1 -0
  30. package/dist/_chunks/{es-f_rfLY5r.mjs → es-CEiXVnsb.mjs} +1 -1
  31. package/dist/_chunks/es-CEiXVnsb.mjs.map +1 -0
  32. package/dist/_chunks/{es-5fRDaTSK.js → es-DH1GVZe7.js} +1 -1
  33. package/dist/_chunks/es-DH1GVZe7.js.map +1 -0
  34. package/dist/_chunks/{fr-qviymkcR.js → fr-B1x-Nj5w.js} +1 -1
  35. package/dist/_chunks/fr-B1x-Nj5w.js.map +1 -0
  36. package/dist/_chunks/{fr-L2xRpd2l.mjs → fr-BlX-v4UF.mjs} +1 -1
  37. package/dist/_chunks/fr-BlX-v4UF.mjs.map +1 -0
  38. package/dist/_chunks/getTrad-AjYeGjZg.mjs +51 -0
  39. package/dist/_chunks/getTrad-AjYeGjZg.mjs.map +1 -0
  40. package/dist/_chunks/getTrad-CPA7x4Cg.js +50 -0
  41. package/dist/_chunks/getTrad-CPA7x4Cg.js.map +1 -0
  42. package/dist/_chunks/{id-l-r-lPDE.mjs → id-CPOl6_EU.mjs} +1 -1
  43. package/dist/_chunks/id-CPOl6_EU.mjs.map +1 -0
  44. package/dist/_chunks/{id-caKGgafZ.js → id-D3yFE72d.js} +1 -1
  45. package/dist/_chunks/id-D3yFE72d.js.map +1 -0
  46. package/{server/public/index.html → dist/_chunks/index-BTFWrNiz.mjs} +9 -4
  47. package/dist/_chunks/index-BTFWrNiz.mjs.map +1 -0
  48. package/dist/_chunks/index-Bjeq6z8p.js +100 -0
  49. package/dist/_chunks/index-Bjeq6z8p.js.map +1 -0
  50. package/dist/_chunks/index-CEoG11hQ.mjs +101 -0
  51. package/dist/_chunks/index-CEoG11hQ.mjs.map +1 -0
  52. package/dist/_chunks/index-CYcTK1eg.js +75 -0
  53. package/dist/_chunks/index-CYcTK1eg.js.map +1 -0
  54. package/dist/_chunks/{it-nCSZoaet.mjs → it-DWJI563z.mjs} +1 -1
  55. package/dist/_chunks/it-DWJI563z.mjs.map +1 -0
  56. package/dist/_chunks/{it-e3T319Va.js → it-WuNBIqG8.js} +1 -1
  57. package/dist/_chunks/it-WuNBIqG8.js.map +1 -0
  58. package/dist/_chunks/{ko-pUwRxmfG.mjs → ko-CFzSHayG.mjs} +1 -1
  59. package/dist/_chunks/ko-CFzSHayG.mjs.map +1 -0
  60. package/dist/_chunks/{ko-nWCOH-TF.js → ko-De5iYa_O.js} +1 -1
  61. package/dist/_chunks/ko-De5iYa_O.js.map +1 -0
  62. package/dist/_chunks/login-EQSKn2h7.js +150 -0
  63. package/dist/_chunks/login-EQSKn2h7.js.map +1 -0
  64. package/{server/public/login.html → dist/_chunks/login-KS59cQ6U.mjs} +6 -1
  65. package/dist/_chunks/login-KS59cQ6U.mjs.map +1 -0
  66. package/dist/_chunks/{ms-8e8SEhhY.mjs → ms-CUgPFo4U.mjs} +1 -1
  67. package/dist/_chunks/ms-CUgPFo4U.mjs.map +1 -0
  68. package/dist/_chunks/{ms-CSGAOmvV.js → ms-DQfa3FDx.js} +1 -1
  69. package/dist/_chunks/ms-DQfa3FDx.js.map +1 -0
  70. package/dist/_chunks/{nl-82NK6g7v.js → nl-BZHlqphk.js} +1 -1
  71. package/dist/_chunks/nl-BZHlqphk.js.map +1 -0
  72. package/dist/_chunks/{nl-RjdbZWuM.mjs → nl-B_7CHwVD.mjs} +1 -1
  73. package/dist/_chunks/nl-B_7CHwVD.mjs.map +1 -0
  74. package/dist/_chunks/{pl-UMuW3iDh.js → pl-DDl5i_mP.js} +1 -1
  75. package/dist/_chunks/pl-DDl5i_mP.js.map +1 -0
  76. package/dist/_chunks/{pl-sh4sAKA8.mjs → pl-DwLr8sw9.mjs} +1 -1
  77. package/dist/_chunks/pl-DwLr8sw9.mjs.map +1 -0
  78. package/dist/_chunks/{pt-2sEtQifY.js → pt-4GQ8ermL.js} +1 -1
  79. package/dist/_chunks/pt-4GQ8ermL.js.map +1 -0
  80. package/dist/_chunks/{pt-BR-G0-nWgFV.js → pt-BR-D24CJ0qp.js} +1 -1
  81. package/dist/_chunks/pt-BR-D24CJ0qp.js.map +1 -0
  82. package/dist/_chunks/{pt-BR-uX3O_t0X.mjs → pt-BR-MVXc6V9P.mjs} +1 -1
  83. package/dist/_chunks/pt-BR-MVXc6V9P.mjs.map +1 -0
  84. package/dist/_chunks/{pt-GqKRRnNe.mjs → pt-C2N9fdeh.mjs} +1 -1
  85. package/dist/_chunks/pt-C2N9fdeh.mjs.map +1 -0
  86. package/dist/_chunks/{ru-dQr7xFOb.mjs → ru-BddeNlU0.mjs} +1 -1
  87. package/dist/_chunks/ru-BddeNlU0.mjs.map +1 -0
  88. package/dist/_chunks/{ru-wJyWus4I.js → ru-QwZYcU6K.js} +1 -1
  89. package/dist/_chunks/ru-QwZYcU6K.js.map +1 -0
  90. package/dist/_chunks/{sk-nreoyD6V.mjs → sk-BmT4uZTG.mjs} +1 -1
  91. package/dist/_chunks/sk-BmT4uZTG.mjs.map +1 -0
  92. package/dist/_chunks/{sk-mcEz1PMW.js → sk-DgAXilB1.js} +1 -1
  93. package/dist/_chunks/sk-DgAXilB1.js.map +1 -0
  94. package/dist/_chunks/{sv-V86KaP9y.js → sv-CCLcAo3U.js} +1 -1
  95. package/dist/_chunks/sv-CCLcAo3U.js.map +1 -0
  96. package/dist/_chunks/{sv-kIUD_46v.mjs → sv-D_-KBtcw.mjs} +1 -1
  97. package/dist/_chunks/sv-D_-KBtcw.mjs.map +1 -0
  98. package/dist/_chunks/{th-pZN4HdUY.js → th-BhgV1BbW.js} +1 -1
  99. package/dist/_chunks/th-BhgV1BbW.js.map +1 -0
  100. package/dist/_chunks/{th-IcmZ0Yif.mjs → th-DkuoSGii.mjs} +1 -1
  101. package/dist/_chunks/th-DkuoSGii.mjs.map +1 -0
  102. package/dist/_chunks/{tr-fCijT6nA.js → tr-BysnAErC.js} +1 -1
  103. package/dist/_chunks/tr-BysnAErC.js.map +1 -0
  104. package/dist/_chunks/{tr-CkXew0gQ.mjs → tr-l-xxK4Yk.mjs} +1 -1
  105. package/dist/_chunks/tr-l-xxK4Yk.mjs.map +1 -0
  106. package/dist/_chunks/{uk-TEHpQuls.js → uk-CNlbntFx.js} +1 -1
  107. package/dist/_chunks/uk-CNlbntFx.js.map +1 -0
  108. package/dist/_chunks/{uk-E8Js7gDb.mjs → uk-Cpmsxyku.mjs} +1 -1
  109. package/dist/_chunks/uk-Cpmsxyku.mjs.map +1 -0
  110. package/dist/_chunks/{vi-k1R3Y3mS.mjs → vi-ClWGrFm9.mjs} +1 -1
  111. package/dist/_chunks/vi-ClWGrFm9.mjs.map +1 -0
  112. package/dist/_chunks/{vi-Nxtm0xZz.js → vi-_ib0GmNl.js} +1 -1
  113. package/dist/_chunks/vi-_ib0GmNl.js.map +1 -0
  114. package/dist/_chunks/{zh-Vd3mfBR-.mjs → zh-Glkg1L2g.mjs} +1 -1
  115. package/dist/_chunks/zh-Glkg1L2g.mjs.map +1 -0
  116. package/dist/_chunks/{zh-Hans-tFSnVett.js → zh-Hans-L_5U2KqC.js} +1 -1
  117. package/dist/_chunks/zh-Hans-L_5U2KqC.js.map +1 -0
  118. package/dist/_chunks/{zh-Hans-FdUTcggu.mjs → zh-Hans-XLMwjASk.mjs} +1 -1
  119. package/dist/_chunks/zh-Hans-XLMwjASk.mjs.map +1 -0
  120. package/dist/_chunks/{zh-bgauBZz8.js → zh-aEZZdkOu.js} +1 -1
  121. package/dist/_chunks/zh-aEZZdkOu.js.map +1 -0
  122. package/dist/admin/index.js +1 -1
  123. package/dist/admin/index.mjs +1 -1
  124. package/dist/admin/src/components/SettingsForm.d.ts +8 -0
  125. package/dist/admin/src/constants.d.ts +18 -0
  126. package/dist/admin/src/index.d.ts +14 -0
  127. package/dist/admin/src/pages/App.d.ts +2 -0
  128. package/dist/admin/src/pages/Settings.d.ts +2 -0
  129. package/dist/admin/src/pluginId.d.ts +1 -0
  130. package/dist/admin/src/services/api.d.ts +13 -0
  131. package/dist/admin/src/types.d.ts +16 -0
  132. package/dist/admin/src/utils/baseQuery.d.ts +5 -0
  133. package/dist/admin/src/utils/getTrad.d.ts +1 -0
  134. package/dist/admin/src/utils/index.d.ts +2 -0
  135. package/dist/admin/src/utils/prefixPluginTranslations.d.ts +2 -0
  136. package/dist/server/index.js +1263 -0
  137. package/dist/server/index.js.map +1 -0
  138. package/dist/server/index.mjs +1238 -0
  139. package/dist/server/index.mjs.map +1 -0
  140. package/dist/server/src/bootstrap.d.ts +5 -0
  141. package/dist/server/src/bootstrap.d.ts.map +1 -0
  142. package/dist/server/src/config/default-plugin-config.d.ts +3 -0
  143. package/dist/server/src/config/default-plugin-config.d.ts.map +1 -0
  144. package/dist/server/src/config/index.d.ts +4 -0
  145. package/dist/server/src/config/index.d.ts.map +1 -0
  146. package/dist/server/src/controllers/documentation.d.ts +12 -0
  147. package/dist/server/src/controllers/documentation.d.ts.map +1 -0
  148. package/dist/server/src/controllers/index.d.ts +14 -0
  149. package/dist/server/src/controllers/index.d.ts.map +1 -0
  150. package/dist/server/src/index.d.ts +91 -0
  151. package/dist/server/src/index.d.ts.map +1 -0
  152. package/dist/server/src/middlewares/documentation.d.ts +5 -0
  153. package/dist/server/src/middlewares/documentation.d.ts.map +1 -0
  154. package/dist/server/src/middlewares/restrict-access.d.ts +4 -0
  155. package/dist/server/src/middlewares/restrict-access.d.ts.map +1 -0
  156. package/dist/server/src/register.d.ts +5 -0
  157. package/dist/server/src/register.d.ts.map +1 -0
  158. package/dist/server/src/routes/index.d.ts +36 -0
  159. package/dist/server/src/routes/index.d.ts.map +1 -0
  160. package/dist/server/src/services/__mocks__/mock-content-types.d.ts +449 -0
  161. package/dist/server/src/services/__mocks__/mock-content-types.d.ts.map +1 -0
  162. package/dist/server/src/services/__mocks__/mock-strapi-data.d.ts +592 -0
  163. package/dist/server/src/services/__mocks__/mock-strapi-data.d.ts.map +1 -0
  164. package/dist/server/src/services/documentation.d.ts +36 -0
  165. package/dist/server/src/services/documentation.d.ts.map +1 -0
  166. package/dist/server/src/services/helpers/build-api-endpoint-path.d.ts +7 -0
  167. package/dist/server/src/services/helpers/build-api-endpoint-path.d.ts.map +1 -0
  168. package/dist/server/src/services/helpers/build-component-schema.d.ts +4 -0
  169. package/dist/server/src/services/helpers/build-component-schema.d.ts.map +1 -0
  170. package/dist/server/src/services/helpers/index.d.ts +4 -0
  171. package/dist/server/src/services/helpers/index.d.ts.map +1 -0
  172. package/dist/server/src/services/helpers/utils/clean-schema-attributes.d.ts +15 -0
  173. package/dist/server/src/services/helpers/utils/clean-schema-attributes.d.ts.map +1 -0
  174. package/dist/server/src/services/helpers/utils/get-api-responses.d.ts +15 -0
  175. package/dist/server/src/services/helpers/utils/get-api-responses.d.ts.map +1 -0
  176. package/dist/server/src/services/helpers/utils/get-schema-data.d.ts +12 -0
  177. package/dist/server/src/services/helpers/utils/get-schema-data.d.ts.map +1 -0
  178. package/dist/server/src/services/helpers/utils/loop-content-type-names.d.ts +7 -0
  179. package/dist/server/src/services/helpers/utils/loop-content-type-names.d.ts.map +1 -0
  180. package/dist/server/src/services/helpers/utils/pascal-case.d.ts +3 -0
  181. package/dist/server/src/services/helpers/utils/pascal-case.d.ts.map +1 -0
  182. package/dist/server/src/services/helpers/utils/query-params.d.ts +4 -0
  183. package/dist/server/src/services/helpers/utils/query-params.d.ts.map +1 -0
  184. package/dist/server/src/services/helpers/utils/routes.d.ts +3 -0
  185. package/dist/server/src/services/helpers/utils/routes.d.ts.map +1 -0
  186. package/dist/server/src/services/index.d.ts +43 -0
  187. package/dist/server/src/services/index.d.ts.map +1 -0
  188. package/dist/server/src/services/override.d.ts +21 -0
  189. package/dist/server/src/services/override.d.ts.map +1 -0
  190. package/dist/server/src/services/utils/get-plugins-that-need-documentation.d.ts +4 -0
  191. package/dist/server/src/services/utils/get-plugins-that-need-documentation.d.ts.map +1 -0
  192. package/dist/server/src/types.d.ts +28 -0
  193. package/dist/server/src/types.d.ts.map +1 -0
  194. package/dist/server/src/utils.d.ts +12 -0
  195. package/dist/server/src/utils.d.ts.map +1 -0
  196. package/package.json +45 -25
  197. package/strapi-server.js +1 -1
  198. package/.eslintignore +0 -1
  199. package/.eslintrc +0 -17
  200. package/admin/src/constants.js +0 -17
  201. package/admin/src/hooks/useDocumentation.js +0 -81
  202. package/admin/src/index.js +0 -62
  203. package/admin/src/pages/PluginPage/index.jsx +0 -212
  204. package/admin/src/pages/PluginPage/tests/index.test.jsx +0 -160
  205. package/admin/src/pages/SettingsPage/index.jsx +0 -202
  206. package/admin/src/pages/SettingsPage/tests/index.test.jsx +0 -72
  207. package/admin/src/pluginId.js +0 -5
  208. package/admin/src/translations/ar.json +0 -20
  209. package/admin/src/translations/cs.json +0 -21
  210. package/admin/src/translations/de.json +0 -26
  211. package/admin/src/translations/dk.json +0 -39
  212. package/admin/src/translations/en.json +0 -39
  213. package/admin/src/translations/es.json +0 -39
  214. package/admin/src/translations/fr.json +0 -26
  215. package/admin/src/translations/id.json +0 -24
  216. package/admin/src/translations/it.json +0 -26
  217. package/admin/src/translations/ko.json +0 -39
  218. package/admin/src/translations/ms.json +0 -23
  219. package/admin/src/translations/nl.json +0 -21
  220. package/admin/src/translations/pl.json +0 -39
  221. package/admin/src/translations/pt-BR.json +0 -21
  222. package/admin/src/translations/pt.json +0 -21
  223. package/admin/src/translations/ru.json +0 -39
  224. package/admin/src/translations/sk.json +0 -24
  225. package/admin/src/translations/sv.json +0 -39
  226. package/admin/src/translations/th.json +0 -24
  227. package/admin/src/translations/tr.json +0 -39
  228. package/admin/src/translations/uk.json +0 -23
  229. package/admin/src/translations/vi.json +0 -24
  230. package/admin/src/translations/zh-Hans.json +0 -28
  231. package/admin/src/translations/zh.json +0 -39
  232. package/admin/src/utils/getTrad.js +0 -5
  233. package/admin/src/utils/index.js +0 -2
  234. package/admin/src/utils/prefixPluginTranslations.js +0 -13
  235. package/dist/_chunks/ar-4yWQcJB-.js.map +0 -1
  236. package/dist/_chunks/ar-dlnabvQE.mjs.map +0 -1
  237. package/dist/_chunks/cs-knLCHelx.js.map +0 -1
  238. package/dist/_chunks/cs-x2Pr-Y38.mjs.map +0 -1
  239. package/dist/_chunks/de-10J3uf4y.mjs.map +0 -1
  240. package/dist/_chunks/de-D0HJjv1r.js.map +0 -1
  241. package/dist/_chunks/dk-OGCIxZ4f.js.map +0 -1
  242. package/dist/_chunks/dk-_8JEfZdj.mjs.map +0 -1
  243. package/dist/_chunks/en-V4ac9UMW.mjs.map +0 -1
  244. package/dist/_chunks/en-YgFnjikD.js.map +0 -1
  245. package/dist/_chunks/es-5fRDaTSK.js.map +0 -1
  246. package/dist/_chunks/es-f_rfLY5r.mjs.map +0 -1
  247. package/dist/_chunks/fr-L2xRpd2l.mjs.map +0 -1
  248. package/dist/_chunks/fr-qviymkcR.js.map +0 -1
  249. package/dist/_chunks/id-caKGgafZ.js.map +0 -1
  250. package/dist/_chunks/id-l-r-lPDE.mjs.map +0 -1
  251. package/dist/_chunks/index-7xstUX8_.mjs.map +0 -1
  252. package/dist/_chunks/index-D1KkfApT.js.map +0 -1
  253. package/dist/_chunks/index-NbPCucJl.js +0 -195
  254. package/dist/_chunks/index-NbPCucJl.js.map +0 -1
  255. package/dist/_chunks/index-NvJ4m2q5.mjs +0 -201
  256. package/dist/_chunks/index-NvJ4m2q5.mjs.map +0 -1
  257. package/dist/_chunks/index-VpLAJXMs.mjs +0 -174
  258. package/dist/_chunks/index-VpLAJXMs.mjs.map +0 -1
  259. package/dist/_chunks/index-r7HsQTou.js +0 -200
  260. package/dist/_chunks/index-r7HsQTou.js.map +0 -1
  261. package/dist/_chunks/it-e3T319Va.js.map +0 -1
  262. package/dist/_chunks/it-nCSZoaet.mjs.map +0 -1
  263. package/dist/_chunks/ko-nWCOH-TF.js.map +0 -1
  264. package/dist/_chunks/ko-pUwRxmfG.mjs.map +0 -1
  265. package/dist/_chunks/ms-8e8SEhhY.mjs.map +0 -1
  266. package/dist/_chunks/ms-CSGAOmvV.js.map +0 -1
  267. package/dist/_chunks/nl-82NK6g7v.js.map +0 -1
  268. package/dist/_chunks/nl-RjdbZWuM.mjs.map +0 -1
  269. package/dist/_chunks/pl-UMuW3iDh.js.map +0 -1
  270. package/dist/_chunks/pl-sh4sAKA8.mjs.map +0 -1
  271. package/dist/_chunks/pt-2sEtQifY.js.map +0 -1
  272. package/dist/_chunks/pt-BR-G0-nWgFV.js.map +0 -1
  273. package/dist/_chunks/pt-BR-uX3O_t0X.mjs.map +0 -1
  274. package/dist/_chunks/pt-GqKRRnNe.mjs.map +0 -1
  275. package/dist/_chunks/ru-dQr7xFOb.mjs.map +0 -1
  276. package/dist/_chunks/ru-wJyWus4I.js.map +0 -1
  277. package/dist/_chunks/sk-mcEz1PMW.js.map +0 -1
  278. package/dist/_chunks/sk-nreoyD6V.mjs.map +0 -1
  279. package/dist/_chunks/sv-V86KaP9y.js.map +0 -1
  280. package/dist/_chunks/sv-kIUD_46v.mjs.map +0 -1
  281. package/dist/_chunks/th-IcmZ0Yif.mjs.map +0 -1
  282. package/dist/_chunks/th-pZN4HdUY.js.map +0 -1
  283. package/dist/_chunks/tr-CkXew0gQ.mjs.map +0 -1
  284. package/dist/_chunks/tr-fCijT6nA.js.map +0 -1
  285. package/dist/_chunks/uk-E8Js7gDb.mjs.map +0 -1
  286. package/dist/_chunks/uk-TEHpQuls.js.map +0 -1
  287. package/dist/_chunks/useDocumentation-6Ks-_Ms6.mjs +0 -68
  288. package/dist/_chunks/useDocumentation-6Ks-_Ms6.mjs.map +0 -1
  289. package/dist/_chunks/useDocumentation-S0e4mU-U.js +0 -67
  290. package/dist/_chunks/useDocumentation-S0e4mU-U.js.map +0 -1
  291. package/dist/_chunks/vi-Nxtm0xZz.js.map +0 -1
  292. package/dist/_chunks/vi-k1R3Y3mS.mjs.map +0 -1
  293. package/dist/_chunks/zh-Hans-FdUTcggu.mjs.map +0 -1
  294. package/dist/_chunks/zh-Hans-tFSnVett.js.map +0 -1
  295. package/dist/_chunks/zh-Vd3mfBR-.mjs.map +0 -1
  296. package/dist/_chunks/zh-bgauBZz8.js.map +0 -1
  297. package/jest.config.front.js +0 -7
  298. package/jest.config.js +0 -6
  299. package/packup.config.ts +0 -22
  300. package/server/bootstrap.js +0 -54
  301. package/server/config/default-plugin-config.js +0 -35
  302. package/server/config/index.js +0 -7
  303. package/server/controllers/documentation.js +0 -241
  304. package/server/controllers/index.js +0 -7
  305. package/server/index.js +0 -17
  306. package/server/middlewares/documentation.js +0 -25
  307. package/server/middlewares/index.js +0 -7
  308. package/server/middlewares/restrict-access.js +0 -24
  309. package/server/register.js +0 -11
  310. package/server/routes/index.js +0 -84
  311. package/server/services/__mocks__/mock-content-types.js +0 -264
  312. package/server/services/__mocks__/mock-strapi-data.js +0 -183
  313. package/server/services/__tests__/build-component-schema.test.js +0 -761
  314. package/server/services/__tests__/documentation.test.js +0 -481
  315. package/server/services/__tests__/override.test.js +0 -85
  316. package/server/services/documentation.js +0 -246
  317. package/server/services/helpers/build-api-endpoint-path.js +0 -186
  318. package/server/services/helpers/build-component-schema.js +0 -254
  319. package/server/services/helpers/index.js +0 -9
  320. package/server/services/helpers/utils/clean-schema-attributes.js +0 -246
  321. package/server/services/helpers/utils/get-api-responses.js +0 -105
  322. package/server/services/helpers/utils/get-schema-data.js +0 -32
  323. package/server/services/helpers/utils/loop-content-type-names.js +0 -55
  324. package/server/services/helpers/utils/pascal-case.js +0 -9
  325. package/server/services/helpers/utils/query-params.js +0 -105
  326. package/server/services/helpers/utils/routes.js +0 -10
  327. package/server/services/index.js +0 -9
  328. package/server/services/override.js +0 -52
  329. package/server/services/utils/default-openapi-components.js +0 -40
  330. package/server/services/utils/get-plugins-that-need-documentation.js +0 -24
  331. package/tests/server.js +0 -37
  332. package/tests/setup.js +0 -15
@@ -1,39 +0,0 @@
1
- {
2
- "coming-soon": "Bu içerik şuanda düzenleniyor. Bir kaç hafta sonra yayında olacak!",
3
- "components.Row.open": "Aç",
4
- "components.Row.regenerate": "Yeniden üret",
5
- "containers.HomePage.Block.title": "Versiyonlar",
6
- "containers.HomePage.Button.update": "Güncelle",
7
- "containers.HomePage.PluginHeader.title": "Dokümantasyon — Ayarlar",
8
- "containers.HomePage.PopUpWarning.confirm": "Anladım",
9
- "containers.HomePage.PopUpWarning.message": "Bu versiyonu silmek istediğinden emin misin?",
10
- "containers.HomePage.copied": "Token panoya kopyalandı",
11
- "containers.HomePage.form.jwtToken": "JWT tokenını al",
12
- "containers.HomePage.form.jwtToken.description": "İstek atmak için bu tokenı kopyala ve swaggerda kullan",
13
- "containers.HomePage.form.password": "Şifre",
14
- "containers.HomePage.form.password.inputDescription": "Dokümantasyona erişmek için şifreyi belirle",
15
- "containers.HomePage.form.restrictedAccess": "Kısıtlı erişim",
16
- "containers.HomePage.form.restrictedAccess.inputDescription": "Dokümantasyon uç noktasını gizle. Varsayılan olarak erişim herkese açıktır",
17
- "containers.HomePage.form.showGeneratedFiles": "Üretilen dosyaları göster",
18
- "containers.HomePage.form.showGeneratedFiles.inputDescription": "Üretilen dokümantasyonun üzerine yazmak istediğinde kullanışlıdır. \nEklenti dosyaları model ve eklentilere göre ayrı olarak üretecektir. \nBu seçeneği etkinleştirerek dokümantasyonu özelleştirmen kolaylaşacaktır.",
19
- "error.deleteDoc.versionMissing": "Silmek istediğin versiyon bulunmuyor.",
20
- "error.noVersion": "Bir versiyon gerekli.",
21
- "error.regenerateDoc": "Dokümanı yeniden üretirken bir hata oluştu",
22
- "error.regenerateDoc.versionMissing": "Üretmeye çalıştığın versiyon bulunmuyor",
23
- "notification.delete.success": "Doküman silindi",
24
- "notification.generate.success": "Doküman üretildi",
25
- "notification.update.success": "Ayarlar başarıyla güncellendi",
26
- "pages.PluginPage.Button.open": "Dokümanı aç",
27
- "pages.PluginPage.header.description": "Dokümantasyon eklentisini ayarla",
28
- "pages.PluginPage.table.generated": "Son üretilme",
29
- "pages.PluginPage.table.icon.regenerate": "Yeniden üret: {target}",
30
- "pages.PluginPage.table.icon.show": "Aç: {target}",
31
- "pages.PluginPage.table.version": "Versiyon",
32
- "pages.SettingsPage.header.description": "Dokümantasyon eklentisini ayarla",
33
- "pages.SettingsPage.header.save": "Kaydet",
34
- "pages.SettingsPage.toggle.hint": "Dokümantasyon uç noktasını gizli yap",
35
- "pages.SettingsPage.toggle.label": "Kısıtlı Erişim",
36
- "plugin.description.long": "Bir OpenAPI Dokümanı oluştur ve Swagger UI ile APIni görselleştir.",
37
- "plugin.description.short": "Bir OpenAPI Dokümanı oluştur ve Swagger UI ile APIni görselleştir.",
38
- "plugin.name": "Dokümantasyon"
39
- }
@@ -1,23 +0,0 @@
1
- {
2
- "components.Row.open": "Відкрити",
3
- "components.Row.regenerate": "Згенерувати",
4
- "containers.HomePage.Block.title": "Версії",
5
- "containers.HomePage.Button.update": "Оновити",
6
- "containers.HomePage.PluginHeader.title": "Документація — Налаштування",
7
- "containers.HomePage.PopUpWarning.confirm": "Я усвідомлюю",
8
- "containers.HomePage.PopUpWarning.message": "Ви впевнені, що хочете видалити цю версію?",
9
- "containers.HomePage.copied": "Токен скопійовано у буфер обміну",
10
- "containers.HomePage.form.jwtToken": "Отримайте ваш JWT токен",
11
- "containers.HomePage.form.jwtToken.description": "Скопіюйте цей токен та застосуйте його в swagger, щоб відправляти запити",
12
- "containers.HomePage.form.password": "Пароль",
13
- "containers.HomePage.form.password.inputDescription": "Встановіть пароль доступу до документації",
14
- "containers.HomePage.form.restrictedAccess": "Обмежений доступ",
15
- "containers.HomePage.form.restrictedAccess.inputDescription": "Зробіть документацію приватною. За замовченням, документація загальнодоступна",
16
- "containers.HomePage.form.showGeneratedFiles": "Показати згенеровані файли",
17
- "containers.HomePage.form.showGeneratedFiles.inputDescription": "Корисно, якщо ви хочете переписати згенеровані документи \nПлаґін згенерує файли окремо для моделі та плаґіну. \nУвімкнувши цю опцію, буде легше налаштувати вашу документацію",
18
- "error.deleteDoc.versionMissing": "Версія, яку ви намагаєтесь видалити не існує.",
19
- "error.noVersion": "Необхідна версія",
20
- "error.regenerateDoc": "Під час генерування документації сталася помилка",
21
- "error.regenerateDoc.versionMissing": "Версія, яку ви намагаєтесь згенерувати не існує.",
22
- "notification.update.success": "Налаштування оновлено"
23
- }
@@ -1,24 +0,0 @@
1
- {
2
- "components.Row.open": "Mở",
3
- "components.Row.regenerate": "Sinh lại",
4
- "containers.HomePage.Block.title": "Các Phiên Bản",
5
- "containers.HomePage.Button.update": "Cập nhật",
6
- "containers.HomePage.PluginHeader.title": "Tài liệu — Cài đặt",
7
- "containers.HomePage.PopUpWarning.confirm": "Tôi hiểu",
8
- "containers.HomePage.PopUpWarning.message": "Bạn có chắc là muốn xóa phiên bản này không?",
9
- "containers.HomePage.copied": "Chuỗi khoá đã được sao chép vào bộ nhớ tạm",
10
- "containers.HomePage.form.jwtToken": "Lấy lại chuỗi khóa JWT của bạn",
11
- "containers.HomePage.form.jwtToken.description": "Sao chép chuỗi khóa và sử dụng nó trong swagger để truy vấn",
12
- "containers.HomePage.form.password": "Mật khẩu",
13
- "containers.HomePage.form.password.inputDescription": "Cài đặt mật khẩu để truy cập tài liệu",
14
- "containers.HomePage.form.restrictedAccess": "Truy cập bị giới hạn",
15
- "containers.HomePage.form.restrictedAccess.inputDescription": "Làm cho điểm truy cập tài liệu thành riêng tư. Mặc định, truy cập là công khai.",
16
- "containers.HomePage.form.showGeneratedFiles": "Hiển thị tập tin đã sinh ra",
17
- "containers.HomePage.form.showGeneratedFiles.inputDescription": "Hữu ích khi bạn muốn ghi đè lên tài liệu đã sinh ra. \nPlugin này sẽ tạo ra các tập tin phân chia bởi cấu hình và plugin. \nBằng việc kích hoạt tuỳ chọn này, sẽ dễ dàng hơn cho bạn tùy chỉnh tài liệu của bạn.",
18
- "error.deleteDoc.versionMissing": "Phiên bản bạn đang cố xóa không tồn tại.",
19
- "error.noVersion": "Bắt buộc phải có một phiên bản",
20
- "error.regenerateDoc": "Một lỗi đã xảy ra trong khi sinh ra tài liệu",
21
- "error.regenerateDoc.versionMissing": "Phiên bản bạn đang cố sinh ra không tồn tại",
22
- "notification.update.success": "Các cài đặt đã được cập nhật thành công",
23
- "plugin.name": "Tài liệu"
24
- }
@@ -1,28 +0,0 @@
1
- {
2
- "components.Row.open": "打开",
3
- "components.Row.regenerate": "重新生成",
4
- "containers.HomePage.Block.title": "版本号",
5
- "containers.HomePage.Button.update": "更新",
6
- "containers.HomePage.PluginHeader.title": "文档 — 设置",
7
- "containers.HomePage.PopUpWarning.confirm": "我确定",
8
- "containers.HomePage.PopUpWarning.message": "您确定要删除此版本吗?",
9
- "containers.HomePage.copied": "令牌已被复制到粘贴板",
10
- "containers.HomePage.form.jwtToken": "检索您的 JWT 令牌",
11
- "containers.HomePage.form.jwtToken.description": "复制此令牌,并用它在 Swagger 中发出请求",
12
- "containers.HomePage.form.password": "密码",
13
- "containers.HomePage.form.password.inputDescription": "设置密码以供访问文档",
14
- "containers.HomePage.form.restrictedAccess": "禁止访问",
15
- "containers.HomePage.form.restrictedAccess.inputDescription": "将文档端点设为私有。默认情况下,访问权限是公共的",
16
- "containers.HomePage.form.showGeneratedFiles": "显示生成的文件",
17
- "containers.HomePage.form.showGeneratedFiles.inputDescription": "当您想要覆盖生成的文档的时候很有用。 \n该插件将生成按型号和插件拆分的文件。 \n通过启用此选项,可以更轻松地自定义文档",
18
- "error.deleteDoc.versionMissing": "您尝试删除的版本不存在。",
19
- "error.noVersion": "需要一个版本",
20
- "error.regenerateDoc": "重新生成文件时发生错误",
21
- "error.regenerateDoc.versionMissing": "您尝试重新生成的版本不存在",
22
- "notification.delete.success": "文档删除成功",
23
- "notification.generate.success": "文档生成成功",
24
- "notification.update.success": "设置更新成功",
25
- "plugin.description.long": "创建OpenAPI文档并使用SwaggerUI可视化你的API",
26
- "plugin.description.short": "创建OpenAPI文档并使用SwaggerUI可视化你的API",
27
- "plugin.name": "文档"
28
- }
@@ -1,39 +0,0 @@
1
- {
2
- "coming-soon": "此內容目前正在構建,將在幾周後回歸!",
3
- "components.Row.open": "開啟",
4
- "components.Row.regenerate": "重新產生",
5
- "containers.HomePage.Block.title": "版本",
6
- "containers.HomePage.Button.update": "更新",
7
- "containers.HomePage.PluginHeader.title": "文件資料 - 設定",
8
- "containers.HomePage.PopUpWarning.confirm": "我了解了",
9
- "containers.HomePage.PopUpWarning.message": "你確定要刪除這個版本嗎?",
10
- "containers.HomePage.copied": "權杖已經複製到剪貼簿",
11
- "containers.HomePage.form.jwtToken": "存取你的 jwt 權杖",
12
- "containers.HomePage.form.jwtToken.description": "複製這個權杖並於 swagger 中使用於發出請求",
13
- "containers.HomePage.form.password": "密碼",
14
- "containers.HomePage.form.password.inputDescription": "設定密碼存取權限",
15
- "containers.HomePage.form.restrictedAccess": "存取受到限制",
16
- "containers.HomePage.form.restrictedAccess.inputDescription": "將 endpoints 設定為私密的。預設是對外公開的",
17
- "containers.HomePage.form.showGeneratedFiles": "顯示產生的檔案",
18
- "containers.HomePage.form.showGeneratedFiles.inputDescription": "用於覆寫產生的文件檔案時。\n擴充套件會依照model及plugin分別產生檔案。\n啟用這個選項將會方便你客製化文件資料",
19
- "error.deleteDoc.versionMissing": "你想刪除的版本不存在",
20
- "error.noVersion": "版本是必填欄位",
21
- "error.regenerateDoc": "重新產生文件資料時發生了錯誤",
22
- "error.regenerateDoc.versionMissing": "你想產生的版本不存在",
23
- "notification.delete.success": "文件已刪除",
24
- "notification.generate.success": "文件已重新產生",
25
- "notification.update.success": "更新設定成功",
26
- "pages.PluginPage.Button.open": "開啟說明文件",
27
- "pages.PluginPage.header.description": "設定說明文件外掛程式",
28
- "pages.PluginPage.table.generated": "最後產生時間",
29
- "pages.PluginPage.table.icon.regenerate": "重新產生 {target}",
30
- "pages.PluginPage.table.icon.show": "開啟 {target}",
31
- "pages.PluginPage.table.version": "版本",
32
- "pages.SettingsPage.header.description": "設定說明文件外掛程式",
33
- "pages.SettingsPage.header.save": "儲存",
34
- "pages.SettingsPage.toggle.hint": "將說明文件端點設為私人",
35
- "pages.SettingsPage.toggle.label": "受限存取",
36
- "plugin.description.long": "建立 OpenAPI 文件,並透過 SWAGGER UI 可視化您的 API。",
37
- "plugin.description.short": "建立 OpenAPI 文件,並透過 SWAGGER UI 可視化您的 API。",
38
- "plugin.name": "文件資料"
39
- }
@@ -1,5 +0,0 @@
1
- import pluginId from '../pluginId';
2
-
3
- const getTrad = (id) => `${pluginId}.${id}`;
4
-
5
- export default getTrad;
@@ -1,2 +0,0 @@
1
- // eslint-disable-next-line import/prefer-default-export
2
- export { default as getTrad } from './getTrad';
@@ -1,13 +0,0 @@
1
- const prefixPluginTranslations = (trad, pluginId) => {
2
- if (!pluginId) {
3
- throw new TypeError("pluginId can't be empty");
4
- }
5
-
6
- return Object.keys(trad).reduce((acc, current) => {
7
- acc[`${pluginId}.${current}`] = trad[current];
8
-
9
- return acc;
10
- }, {});
11
- };
12
-
13
- export { prefixPluginTranslations };
@@ -1 +0,0 @@
1
- {"version":3,"file":"ar-4yWQcJB-.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ar-dlnabvQE.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cs-knLCHelx.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cs-x2Pr-Y38.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"de-10J3uf4y.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"de-D0HJjv1r.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dk-OGCIxZ4f.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dk-_8JEfZdj.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-V4ac9UMW.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-YgFnjikD.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"es-5fRDaTSK.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"es-f_rfLY5r.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fr-L2xRpd2l.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fr-qviymkcR.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"id-caKGgafZ.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"id-l-r-lPDE.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-7xstUX8_.mjs","sources":["../../admin/src/pages/PluginPage/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport {\n LinkButton,\n ContentLayout,\n Flex,\n HeaderLayout,\n IconButton,\n Layout,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n EmptyStateLayout,\n} from '@strapi/design-system';\nimport { Eye as Show, Refresh as Reload, Trash } from '@strapi/icons';\nimport { ConfirmDialog, useRBAC, Page } from '@strapi/strapi/admin';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { PERMISSIONS } from '../../constants';\nimport { useDocumentation } from '../../hooks/useDocumentation';\nimport { getTrad } from '../../utils';\n\nconst PluginPage = () => {\n const { formatMessage } = useIntl();\n const { data, isLoading, isError, remove, regenerate } = useDocumentation();\n const [showConfirmDelete, setShowConfirmDelete] = useState(false);\n const [versionToDelete, setVersionToDelete] = useState();\n const { allowedActions } = useRBAC(PERMISSIONS);\n\n const colCount = 4;\n const rowCount = (data?.docVersions?.length || 0) + 1;\n\n const handleRegenerateDoc = (version) => {\n regenerate.mutate({ version, prefix: data?.prefix });\n };\n\n const handleShowConfirmDelete = () => {\n setShowConfirmDelete(!showConfirmDelete);\n };\n\n const handleConfirmDelete = async () => {\n await remove.mutateAsync({ prefix: data?.prefix, version: versionToDelete });\n setShowConfirmDelete(!showConfirmDelete);\n };\n\n const handleClickDelete = (version) => {\n setVersionToDelete(version);\n setShowConfirmDelete(!showConfirmDelete);\n };\n\n const title = formatMessage({\n id: getTrad('plugin.name'),\n defaultMessage: 'Documentation',\n });\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n if (isError) {\n return <Page.Error />;\n }\n\n return (\n <Layout>\n <Helmet title={title} />\n <Page.Main>\n <HeaderLayout\n title={title}\n subtitle={formatMessage({\n id: getTrad('pages.PluginPage.header.description'),\n defaultMessage: 'Configure the documentation plugin',\n })}\n primaryAction={\n <OpenDocLink\n disabled={!allowedActions.canOpen || !data?.currentVersion || !data?.prefix}\n href={createDocumentationHref(`${data?.prefix}/v${data?.currentVersion}`)}\n startIcon={<Show />}\n >\n {formatMessage({\n id: getTrad('pages.PluginPage.Button.open'),\n defaultMessage: 'Open Documentation',\n })}\n </OpenDocLink>\n }\n />\n <ContentLayout>\n {data?.docVersions.length ? (\n <Table colCount={colCount} rowCount={rowCount}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('pages.PluginPage.table.version'),\n defaultMessage: 'Version',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('pages.PluginPage.table.generated'),\n defaultMessage: 'Last Generated',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data.docVersions\n .sort((a, b) => (a.generatedDate < b.generatedDate ? 1 : -1))\n .map((doc) => (\n <Tr key={doc.version}>\n <Td width=\"50%\">\n <Typography>{doc.version}</Typography>\n </Td>\n <Td width=\"50%\">\n <Typography>{doc.generatedDate}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"end\" onClick={(e) => e.stopPropagation()}>\n <IconButton\n forwardedAs=\"a\"\n disabled={!allowedActions.canOpen}\n href={createDocumentationHref(`${data.prefix}/v${doc.version}`)}\n noBorder\n icon={<Show />}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n label={formatMessage(\n {\n id: getTrad('pages.PluginPage.table.icon.show'),\n defaultMessage: 'Open {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n {allowedActions.canRegenerate ? (\n <IconButton\n onClick={() => handleRegenerateDoc(doc.version)}\n noBorder\n icon={<Reload />}\n label={formatMessage(\n {\n id: getTrad('pages.PluginPage.table.icon.regenerate'),\n defaultMessage: 'Regenerate {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n ) : null}\n {allowedActions.canUpdate && doc.version !== data.currentVersion ? (\n <IconButton\n onClick={() => handleClickDelete(doc.version)}\n noBorder\n icon={<Trash />}\n label={formatMessage(\n {\n id: 'global.delete-target',\n defaultMessage: 'Delete {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n ) : null}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout />\n )}\n </ContentLayout>\n <ConfirmDialog\n onConfirm={handleConfirmDelete}\n onClose={handleShowConfirmDelete}\n isOpen={showConfirmDelete}\n />\n </Page.Main>\n </Layout>\n );\n};\n\n/**\n * TODO: should this be fixed in the DS?\n */\nconst OpenDocLink = styled(LinkButton)`\n text-decoration: none;\n`;\n\nconst createDocumentationHref = (path) => {\n if (path.startsWith('http')) {\n return path;\n }\n\n if (path.startsWith('/')) {\n return `${window.strapi.backendURL}${path}`;\n }\n\n return `${window.strapi.backendURL}/${path}`;\n};\n\nexport default PluginPage;\n"],"names":["Show","Reload"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-D1KkfApT.js","sources":["../../admin/src/pages/PluginPage/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport {\n LinkButton,\n ContentLayout,\n Flex,\n HeaderLayout,\n IconButton,\n Layout,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n EmptyStateLayout,\n} from '@strapi/design-system';\nimport { Eye as Show, Refresh as Reload, Trash } from '@strapi/icons';\nimport { ConfirmDialog, useRBAC, Page } from '@strapi/strapi/admin';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { PERMISSIONS } from '../../constants';\nimport { useDocumentation } from '../../hooks/useDocumentation';\nimport { getTrad } from '../../utils';\n\nconst PluginPage = () => {\n const { formatMessage } = useIntl();\n const { data, isLoading, isError, remove, regenerate } = useDocumentation();\n const [showConfirmDelete, setShowConfirmDelete] = useState(false);\n const [versionToDelete, setVersionToDelete] = useState();\n const { allowedActions } = useRBAC(PERMISSIONS);\n\n const colCount = 4;\n const rowCount = (data?.docVersions?.length || 0) + 1;\n\n const handleRegenerateDoc = (version) => {\n regenerate.mutate({ version, prefix: data?.prefix });\n };\n\n const handleShowConfirmDelete = () => {\n setShowConfirmDelete(!showConfirmDelete);\n };\n\n const handleConfirmDelete = async () => {\n await remove.mutateAsync({ prefix: data?.prefix, version: versionToDelete });\n setShowConfirmDelete(!showConfirmDelete);\n };\n\n const handleClickDelete = (version) => {\n setVersionToDelete(version);\n setShowConfirmDelete(!showConfirmDelete);\n };\n\n const title = formatMessage({\n id: getTrad('plugin.name'),\n defaultMessage: 'Documentation',\n });\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n if (isError) {\n return <Page.Error />;\n }\n\n return (\n <Layout>\n <Helmet title={title} />\n <Page.Main>\n <HeaderLayout\n title={title}\n subtitle={formatMessage({\n id: getTrad('pages.PluginPage.header.description'),\n defaultMessage: 'Configure the documentation plugin',\n })}\n primaryAction={\n <OpenDocLink\n disabled={!allowedActions.canOpen || !data?.currentVersion || !data?.prefix}\n href={createDocumentationHref(`${data?.prefix}/v${data?.currentVersion}`)}\n startIcon={<Show />}\n >\n {formatMessage({\n id: getTrad('pages.PluginPage.Button.open'),\n defaultMessage: 'Open Documentation',\n })}\n </OpenDocLink>\n }\n />\n <ContentLayout>\n {data?.docVersions.length ? (\n <Table colCount={colCount} rowCount={rowCount}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('pages.PluginPage.table.version'),\n defaultMessage: 'Version',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('pages.PluginPage.table.generated'),\n defaultMessage: 'Last Generated',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data.docVersions\n .sort((a, b) => (a.generatedDate < b.generatedDate ? 1 : -1))\n .map((doc) => (\n <Tr key={doc.version}>\n <Td width=\"50%\">\n <Typography>{doc.version}</Typography>\n </Td>\n <Td width=\"50%\">\n <Typography>{doc.generatedDate}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"end\" onClick={(e) => e.stopPropagation()}>\n <IconButton\n forwardedAs=\"a\"\n disabled={!allowedActions.canOpen}\n href={createDocumentationHref(`${data.prefix}/v${doc.version}`)}\n noBorder\n icon={<Show />}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n label={formatMessage(\n {\n id: getTrad('pages.PluginPage.table.icon.show'),\n defaultMessage: 'Open {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n {allowedActions.canRegenerate ? (\n <IconButton\n onClick={() => handleRegenerateDoc(doc.version)}\n noBorder\n icon={<Reload />}\n label={formatMessage(\n {\n id: getTrad('pages.PluginPage.table.icon.regenerate'),\n defaultMessage: 'Regenerate {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n ) : null}\n {allowedActions.canUpdate && doc.version !== data.currentVersion ? (\n <IconButton\n onClick={() => handleClickDelete(doc.version)}\n noBorder\n icon={<Trash />}\n label={formatMessage(\n {\n id: 'global.delete-target',\n defaultMessage: 'Delete {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n ) : null}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout />\n )}\n </ContentLayout>\n <ConfirmDialog\n onConfirm={handleConfirmDelete}\n onClose={handleShowConfirmDelete}\n isOpen={showConfirmDelete}\n />\n </Page.Main>\n </Layout>\n );\n};\n\n/**\n * TODO: should this be fixed in the DS?\n */\nconst OpenDocLink = styled(LinkButton)`\n text-decoration: none;\n`;\n\nconst createDocumentationHref = (path) => {\n if (path.startsWith('http')) {\n return path;\n }\n\n if (path.startsWith('/')) {\n return `${window.strapi.backendURL}${path}`;\n }\n\n return `${window.strapi.backendURL}/${path}`;\n};\n\nexport default PluginPage;\n"],"names":["useIntl","useDocumentation","useState","useRBAC","PERMISSIONS","getTrad","jsx","Page","Layout","Helmet","jsxs","HeaderLayout","Show","ContentLayout","Table","Thead","Tr","Th","Typography","Tbody","Td","Flex","IconButton","Reload","Trash","EmptyStateLayout","ConfirmDialog","styled","LinkButton"],"mappings":";;;;;;;;;;;;;;AA4BA,MAAM,aAAa,MAAM;AACjB,QAAA,EAAE,kBAAkBA,UAAAA;AAC1B,QAAM,EAAE,MAAM,WAAW,SAAS,QAAQ,WAAA,IAAeC,iBAAAA;AACzD,QAAM,CAAC,mBAAmB,oBAAoB,IAAIC,eAAS,KAAK;AAChE,QAAM,CAAC,iBAAiB,kBAAkB,IAAIA,MAAS,SAAA;AACvD,QAAM,EAAE,eAAA,IAAmBC,MAAA,QAAQC,MAAW,WAAA;AAE9C,QAAM,WAAW;AACjB,QAAM,YAAY,MAAM,aAAa,UAAU,KAAK;AAE9C,QAAA,sBAAsB,CAAC,YAAY;AACvC,eAAW,OAAO,EAAE,SAAS,QAAQ,MAAM,QAAQ;AAAA,EAAA;AAGrD,QAAM,0BAA0B,MAAM;AACpC,yBAAqB,CAAC,iBAAiB;AAAA,EAAA;AAGzC,QAAM,sBAAsB,YAAY;AAChC,UAAA,OAAO,YAAY,EAAE,QAAQ,MAAM,QAAQ,SAAS,iBAAiB;AAC3E,yBAAqB,CAAC,iBAAiB;AAAA,EAAA;AAGnC,QAAA,oBAAoB,CAAC,YAAY;AACrC,uBAAmB,OAAO;AAC1B,yBAAqB,CAAC,iBAAiB;AAAA,EAAA;AAGzC,QAAM,QAAQ,cAAc;AAAA,IAC1B,IAAIC,yBAAQ,aAAa;AAAA,IACzB,gBAAgB;AAAA,EAAA,CACjB;AAED,MAAI,WAAW;AACN,WAAAC,+BAACC,MAAAA,KAAK,SAAL,CAAa,CAAA;AAAA,EACvB;AAEA,MAAI,SAAS;AACJ,WAAAD,+BAACC,MAAAA,KAAK,OAAL,CAAW,CAAA;AAAA,EACrB;AAEA,yCACGC,qBACC,EAAA,UAAA;AAAA,IAAAF,+BAACG,YAAAA,UAAO,OAAc;AAAA,IACtBC,2BAAAA,KAACH,MAAK,KAAA,MAAL,EACC,UAAA;AAAA,MAAAD,2BAAA;AAAA,QAACK,aAAA;AAAA,QAAA;AAAA,UACC;AAAA,UACA,UAAU,cAAc;AAAA,YACtB,IAAIN,yBAAQ,qCAAqC;AAAA,YACjD,gBAAgB;AAAA,UAAA,CACjB;AAAA,UACD,eACEC,2BAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,UAAU,CAAC,eAAe,WAAW,CAAC,MAAM,kBAAkB,CAAC,MAAM;AAAA,cACrE,MAAM,wBAAwB,GAAG,MAAM,MAAM,KAAK,MAAM,cAAc,EAAE;AAAA,cACxE,0CAAYM,MAAK,KAAA,EAAA;AAAA,cAEhB,UAAc,cAAA;AAAA,gBACb,IAAIP,yBAAQ,8BAA8B;AAAA,gBAC1C,gBAAgB;AAAA,cAAA,CACjB;AAAA,YAAA;AAAA,UACH;AAAA,QAAA;AAAA,MAEJ;AAAA,MACAC,2BAAAA,IAACO,8BACE,UAAM,MAAA,YAAY,SAChBH,2BAAAA,KAAAI,aAAAA,OAAA,EAAM,UAAoB,UACzB,UAAA;AAAA,QAACR,2BAAA,IAAAS,aAAA,OAAA,EACC,0CAACC,aAAAA,IACC,EAAA,UAAA;AAAA,UAAAV,2BAAAA,IAACW,mBACC,UAACX,2BAAA,IAAAY,aAAA,YAAA,EAAW,SAAQ,SAAQ,WAAU,cACnC,UAAc,cAAA;AAAA,YACb,IAAIb,yBAAQ,gCAAgC;AAAA,YAC5C,gBAAgB;AAAA,UAAA,CACjB,GACH,EACF,CAAA;AAAA,UACAC,2BAAAA,IAACW,mBACC,UAACX,2BAAA,IAAAY,aAAA,YAAA,EAAW,SAAQ,SAAQ,WAAU,cACnC,UAAc,cAAA;AAAA,YACb,IAAIb,yBAAQ,kCAAkC;AAAA,YAC9C,gBAAgB;AAAA,UAAA,CACjB,GACH,EACF,CAAA;AAAA,QAAA,EAAA,CACF,EACF,CAAA;AAAA,uCACCc,aAAAA,OACE,EAAA,UAAA,KAAK,YACH,KAAK,CAAC,GAAG,MAAO,EAAE,gBAAgB,EAAE,gBAAgB,IAAI,EAAG,EAC3D,IAAI,CAAC,wCACHH,iBACC,EAAA,UAAA;AAAA,UAAAV,2BAAAA,IAACc,aAAAA,MAAG,OAAM,OACR,yCAACF,aAAY,YAAA,EAAA,UAAA,IAAI,SAAQ,EAC3B,CAAA;AAAA,UACAZ,2BAAAA,IAACc,aAAAA,MAAG,OAAM,OACR,yCAACF,aAAY,YAAA,EAAA,UAAA,IAAI,eAAc,EACjC,CAAA;AAAA,UACAZ,2BAAAA,IAACc,aAAAA,IACC,EAAA,UAAAV,2BAAA,KAACW,aAAK,MAAA,EAAA,gBAAe,OAAM,SAAS,CAAC,MAAM,EAAE,gBAAA,GAC3C,UAAA;AAAA,YAAAf,2BAAA;AAAA,cAACgB,aAAA;AAAA,cAAA;AAAA,gBACC,aAAY;AAAA,gBACZ,UAAU,CAAC,eAAe;AAAA,gBAC1B,MAAM,wBAAwB,GAAG,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;AAAA,gBAC9D,UAAQ;AAAA,gBACR,qCAAOV,MAAK,KAAA,EAAA;AAAA,gBACZ,QAAO;AAAA,gBACP,KAAI;AAAA,gBACJ,OAAO;AAAA,kBACL;AAAA,oBACE,IAAIP,yBAAQ,kCAAkC;AAAA,oBAC9C,gBAAgB;AAAA,kBAClB;AAAA,kBACA,EAAE,QAAQ,GAAG,IAAI,OAAO,GAAG;AAAA,gBAC7B;AAAA,cAAA;AAAA,YACF;AAAA,YACC,eAAe,gBACdC,2BAAA;AAAA,cAACgB,aAAA;AAAA,cAAA;AAAA,gBACC,SAAS,MAAM,oBAAoB,IAAI,OAAO;AAAA,gBAC9C,UAAQ;AAAA,gBACR,qCAAOC,MAAO,SAAA,EAAA;AAAA,gBACd,OAAO;AAAA,kBACL;AAAA,oBACE,IAAIlB,yBAAQ,wCAAwC;AAAA,oBACpD,gBAAgB;AAAA,kBAClB;AAAA,kBACA,EAAE,QAAQ,GAAG,IAAI,OAAO,GAAG;AAAA,gBAC7B;AAAA,cAAA;AAAA,YAAA,IAEA;AAAA,YACH,eAAe,aAAa,IAAI,YAAY,KAAK,iBAChDC,2BAAA;AAAA,cAACgB,aAAA;AAAA,cAAA;AAAA,gBACC,SAAS,MAAM,kBAAkB,IAAI,OAAO;AAAA,gBAC5C,UAAQ;AAAA,gBACR,qCAAOE,MAAM,OAAA,EAAA;AAAA,gBACb,OAAO;AAAA,kBACL;AAAA,oBACE,IAAI;AAAA,oBACJ,gBAAgB;AAAA,kBAClB;AAAA,kBACA,EAAE,QAAQ,GAAG,IAAI,OAAO,GAAG;AAAA,gBAC7B;AAAA,cAAA;AAAA,YAAA,IAEA;AAAA,UAAA,EAAA,CACN,EACF,CAAA;AAAA,QAtDO,EAAA,GAAA,IAAI,OAuDb,CACD,GACL;AAAA,MACF,EAAA,CAAA,IAEClB,2BAAA,IAAAmB,+BAAA,CAAA,CAAiB,EAEtB,CAAA;AAAA,MACAnB,2BAAA;AAAA,QAACoB,MAAA;AAAA,QAAA;AAAA,UACC,WAAW;AAAA,UACX,SAAS;AAAA,UACT,QAAQ;AAAA,QAAA;AAAA,MACV;AAAA,IAAA,GACF;AAAA,EACF,EAAA,CAAA;AAEJ;AAKA,MAAM,cAAcC,gBAAAA,QAAOC,aAAAA,UAAU;AAAA;AAAA;AAIrC,MAAM,0BAA0B,CAAC,SAAS;AACpC,MAAA,KAAK,WAAW,MAAM,GAAG;AACpB,WAAA;AAAA,EACT;AAEI,MAAA,KAAK,WAAW,GAAG,GAAG;AACxB,WAAO,GAAG,OAAO,OAAO,UAAU,GAAG,IAAI;AAAA,EAC3C;AAEA,SAAO,GAAG,OAAO,OAAO,UAAU,IAAI,IAAI;AAC5C;;"}
@@ -1,195 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const jsxRuntime = require("react/jsx-runtime");
4
- const react = require("react");
5
- const designSystem = require("@strapi/design-system");
6
- const icons = require("@strapi/icons");
7
- const admin = require("@strapi/strapi/admin");
8
- const formik = require("formik");
9
- const reactIntl = require("react-intl");
10
- const styled = require("styled-components");
11
- const yup = require("yup");
12
- const index = require("./index-r7HsQTou.js");
13
- const useDocumentation = require("./useDocumentation-S0e4mU-U.js");
14
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
15
- function _interopNamespace(e) {
16
- if (e && e.__esModule)
17
- return e;
18
- const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
19
- if (e) {
20
- for (const k in e) {
21
- if (k !== "default") {
22
- const d = Object.getOwnPropertyDescriptor(e, k);
23
- Object.defineProperty(n, k, d.get ? d : {
24
- enumerable: true,
25
- get: () => e[k]
26
- });
27
- }
28
- }
29
- }
30
- n.default = e;
31
- return Object.freeze(n);
32
- }
33
- const styled__default = /* @__PURE__ */ _interopDefault(styled);
34
- const yup__namespace = /* @__PURE__ */ _interopNamespace(yup);
35
- const schema = yup__namespace.object().shape({
36
- restrictedAccess: yup__namespace.boolean(),
37
- password: yup__namespace.string().when("restrictedAccess", (value, initSchema) => {
38
- return value ? initSchema.required(admin.translatedErrors.required.id) : initSchema;
39
- })
40
- });
41
- const SettingsPage = () => {
42
- const { formatMessage } = reactIntl.useIntl();
43
- const { submit, data, isLoading } = useDocumentation.useDocumentation();
44
- const [passwordShown, setPasswordShown] = react.useState(false);
45
- const { allowedActions } = admin.useRBAC(index.PERMISSIONS);
46
- const handleUpdateSettingsSubmit = (body) => {
47
- submit.mutate({
48
- prefix: data?.prefix,
49
- body
50
- });
51
- };
52
- if (isLoading) {
53
- return /* @__PURE__ */ jsxRuntime.jsx(admin.Page.Loading, {});
54
- }
55
- return /* @__PURE__ */ jsxRuntime.jsx(admin.Page.Main, { children: /* @__PURE__ */ jsxRuntime.jsx(
56
- formik.Formik,
57
- {
58
- initialValues: {
59
- restrictedAccess: data?.documentationAccess.restrictedAccess || false,
60
- password: ""
61
- },
62
- onSubmit: handleUpdateSettingsSubmit,
63
- validationSchema: schema,
64
- children: ({
65
- handleSubmit,
66
- values,
67
- handleChange,
68
- errors,
69
- setFieldTouched,
70
- setFieldValue,
71
- dirty
72
- }) => {
73
- return /* @__PURE__ */ jsxRuntime.jsxs(formik.Form, { noValidate: true, onSubmit: handleSubmit, children: [
74
- /* @__PURE__ */ jsxRuntime.jsx(
75
- designSystem.HeaderLayout,
76
- {
77
- title: formatMessage({
78
- id: useDocumentation.getTrad("plugin.name"),
79
- defaultMessage: "Documentation"
80
- }),
81
- subtitle: formatMessage({
82
- id: useDocumentation.getTrad("pages.SettingsPage.header.description"),
83
- defaultMessage: "Configure the documentation plugin"
84
- }),
85
- primaryAction: /* @__PURE__ */ jsxRuntime.jsx(
86
- designSystem.Button,
87
- {
88
- type: "submit",
89
- startIcon: /* @__PURE__ */ jsxRuntime.jsx(icons.Check, {}),
90
- disabled: !dirty && allowedActions.canUpdate,
91
- children: formatMessage({
92
- id: useDocumentation.getTrad("pages.SettingsPage.Button.save"),
93
- defaultMessage: "Save"
94
- })
95
- }
96
- )
97
- }
98
- ),
99
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.ContentLayout, { children: /* @__PURE__ */ jsxRuntime.jsx(
100
- designSystem.Box,
101
- {
102
- background: "neutral0",
103
- hasRadius: true,
104
- shadow: "filterShadow",
105
- paddingTop: 6,
106
- paddingBottom: 6,
107
- paddingLeft: 7,
108
- paddingRight: 7,
109
- children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { direction: "column", alignItems: "stretch", gap: 4, children: [
110
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "delta", as: "h2", children: formatMessage({
111
- id: "global.settings",
112
- defaultMessage: "Settings"
113
- }) }),
114
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Grid, { gap: 4, children: [
115
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.GridItem, { col: 6, s: 12, children: /* @__PURE__ */ jsxRuntime.jsx(
116
- designSystem.ToggleInput,
117
- {
118
- name: "restrictedAccess",
119
- label: formatMessage({
120
- id: useDocumentation.getTrad("pages.SettingsPage.toggle.label"),
121
- defaultMessage: "Restricted Access"
122
- }),
123
- hint: formatMessage({
124
- id: useDocumentation.getTrad("pages.SettingsPage.toggle.hint"),
125
- defaultMessage: "Make the documentation endpoint private"
126
- }),
127
- checked: values.restrictedAccess,
128
- onChange: () => {
129
- if (values.restrictedAccess === true) {
130
- setFieldValue("password", "", false);
131
- setFieldTouched("password", false, false);
132
- }
133
- setFieldValue("restrictedAccess", !values.restrictedAccess, false);
134
- },
135
- onLabel: "On",
136
- offLabel: "Off"
137
- }
138
- ) }),
139
- values.restrictedAccess && /* @__PURE__ */ jsxRuntime.jsx(designSystem.GridItem, { col: 6, s: 12, children: /* @__PURE__ */ jsxRuntime.jsx(
140
- designSystem.TextInput,
141
- {
142
- label: formatMessage({
143
- id: "global.password",
144
- defaultMessage: "Password"
145
- }),
146
- name: "password",
147
- placeholder: "**********",
148
- type: passwordShown ? "text" : "password",
149
- value: values.password,
150
- onChange: handleChange,
151
- error: errors.password ? formatMessage({
152
- id: errors.password,
153
- defaultMessage: "Invalid value"
154
- }) : null,
155
- endAction: /* @__PURE__ */ jsxRuntime.jsx(
156
- FieldActionWrapper,
157
- {
158
- onClick: (e) => {
159
- e.stopPropagation();
160
- setPasswordShown((prev) => !prev);
161
- },
162
- label: formatMessage(
163
- passwordShown ? {
164
- id: "Auth.form.password.show-password",
165
- defaultMessage: "Show password"
166
- } : {
167
- id: "Auth.form.password.hide-password",
168
- defaultMessage: "Hide password"
169
- }
170
- ),
171
- children: passwordShown ? /* @__PURE__ */ jsxRuntime.jsx(icons.Eye, {}) : /* @__PURE__ */ jsxRuntime.jsx(icons.EyeStriked, {})
172
- }
173
- )
174
- }
175
- ) })
176
- ] })
177
- ] })
178
- }
179
- ) })
180
- ] });
181
- }
182
- }
183
- ) });
184
- };
185
- const FieldActionWrapper = styled__default.default(designSystem.FieldAction)`
186
- svg {
187
- height: 1rem;
188
- width: 1rem;
189
- path {
190
- fill: ${({ theme }) => theme.colors.neutral600};
191
- }
192
- }
193
- `;
194
- exports.default = SettingsPage;
195
- //# sourceMappingURL=index-NbPCucJl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-NbPCucJl.js","sources":["../../admin/src/pages/SettingsPage/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport {\n Box,\n Button,\n ContentLayout,\n Flex,\n Grid,\n GridItem,\n HeaderLayout,\n TextInput,\n ToggleInput,\n Typography,\n FieldAction,\n} from '@strapi/design-system';\nimport { Check, Eye as Show, EyeStriked as Hide } from '@strapi/icons';\nimport { translatedErrors, Page, useRBAC } from '@strapi/strapi/admin';\nimport { Form, Formik } from 'formik';\nimport { useIntl } from 'react-intl';\nimport styled from 'styled-components';\nimport * as yup from 'yup';\n\nimport { PERMISSIONS } from '../../constants';\nimport { useDocumentation } from '../../hooks/useDocumentation';\nimport { getTrad } from '../../utils';\n\nconst schema = yup.object().shape({\n restrictedAccess: yup.boolean(),\n password: yup.string().when('restrictedAccess', (value, initSchema) => {\n return value ? initSchema.required(translatedErrors.required.id) : initSchema;\n }),\n});\n\nconst SettingsPage = () => {\n const { formatMessage } = useIntl();\n const { submit, data, isLoading } = useDocumentation();\n const [passwordShown, setPasswordShown] = useState(false);\n const { allowedActions } = useRBAC(PERMISSIONS);\n\n const handleUpdateSettingsSubmit = (body) => {\n submit.mutate({\n prefix: data?.prefix,\n body,\n });\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main>\n <Formik\n initialValues={{\n restrictedAccess: data?.documentationAccess.restrictedAccess || false,\n password: '',\n }}\n onSubmit={handleUpdateSettingsSubmit}\n validationSchema={schema}\n >\n {({\n handleSubmit,\n values,\n handleChange,\n errors,\n setFieldTouched,\n setFieldValue,\n dirty,\n }) => {\n return (\n <Form noValidate onSubmit={handleSubmit}>\n <HeaderLayout\n title={formatMessage({\n id: getTrad('plugin.name'),\n defaultMessage: 'Documentation',\n })}\n subtitle={formatMessage({\n id: getTrad('pages.SettingsPage.header.description'),\n defaultMessage: 'Configure the documentation plugin',\n })}\n primaryAction={\n <Button\n type=\"submit\"\n startIcon={<Check />}\n disabled={!dirty && allowedActions.canUpdate}\n >\n {formatMessage({\n id: getTrad('pages.SettingsPage.Button.save'),\n defaultMessage: 'Save',\n })}\n </Button>\n }\n />\n <ContentLayout>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: 'global.settings',\n defaultMessage: 'Settings',\n })}\n </Typography>\n <Grid gap={4}>\n <GridItem col={6} s={12}>\n <ToggleInput\n name=\"restrictedAccess\"\n label={formatMessage({\n id: getTrad('pages.SettingsPage.toggle.label'),\n defaultMessage: 'Restricted Access',\n })}\n hint={formatMessage({\n id: getTrad('pages.SettingsPage.toggle.hint'),\n defaultMessage: 'Make the documentation endpoint private',\n })}\n checked={values.restrictedAccess}\n onChange={() => {\n if (values.restrictedAccess === true) {\n setFieldValue('password', '', false);\n setFieldTouched('password', false, false);\n }\n\n setFieldValue('restrictedAccess', !values.restrictedAccess, false);\n }}\n onLabel=\"On\"\n offLabel=\"Off\"\n />\n </GridItem>\n {values.restrictedAccess && (\n <GridItem col={6} s={12}>\n <TextInput\n label={formatMessage({\n id: 'global.password',\n defaultMessage: 'Password',\n })}\n name=\"password\"\n placeholder=\"**********\"\n type={passwordShown ? 'text' : 'password'}\n value={values.password}\n onChange={handleChange}\n error={\n errors.password\n ? formatMessage({\n id: errors.password,\n defaultMessage: 'Invalid value',\n })\n : null\n }\n endAction={\n <FieldActionWrapper\n onClick={(e) => {\n e.stopPropagation();\n setPasswordShown((prev) => !prev);\n }}\n label={formatMessage(\n passwordShown\n ? {\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n }\n : {\n id: 'Auth.form.password.hide-password',\n defaultMessage: 'Hide password',\n }\n )}\n >\n {passwordShown ? <Show /> : <Hide />}\n </FieldActionWrapper>\n }\n />\n </GridItem>\n )}\n </Grid>\n </Flex>\n </Box>\n </ContentLayout>\n </Form>\n );\n }}\n </Formik>\n </Page.Main>\n );\n};\n\nconst FieldActionWrapper = styled(FieldAction)`\n svg {\n height: 1rem;\n width: 1rem;\n path {\n fill: ${({ theme }) => theme.colors.neutral600};\n }\n }\n`;\n\nexport default SettingsPage;\n"],"names":["yup","translatedErrors","useIntl","useDocumentation","useState","useRBAC","PERMISSIONS","jsx","Page","Formik","jsxs","Form","HeaderLayout","getTrad","Button","Check","ContentLayout","Box","Flex","Typography","Grid","GridItem","ToggleInput","TextInput","Show","Hide","styled","FieldAction"],"mappings":"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"}