strapi-cache 1.6.0-rc.1 → 1.6.0

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 (416) hide show
  1. package/dist/_chunks/de-B3bklY17.js +20 -0
  2. package/dist/_chunks/de-B3bklY17.js.map +1 -0
  3. package/dist/_chunks/de-BABI25Ju.js +18 -0
  4. package/dist/_chunks/de-BABI25Ju.js.map +1 -0
  5. package/dist/_chunks/{de-OlWEMza0.mjs → de-BqbJpOC1.mjs} +5 -2
  6. package/dist/_chunks/de-BqbJpOC1.mjs.map +1 -0
  7. package/dist/_chunks/de-Bsdys7gT.js +21 -0
  8. package/dist/_chunks/de-Bsdys7gT.js.map +1 -0
  9. package/dist/_chunks/de-CFwEGVkz.js +18 -0
  10. package/dist/_chunks/de-CFwEGVkz.js.map +1 -0
  11. package/dist/_chunks/de-CVfl6O3x.mjs +20 -0
  12. package/dist/_chunks/de-CVfl6O3x.mjs.map +1 -0
  13. package/dist/_chunks/de-CWKnuP52.js +21 -0
  14. package/dist/_chunks/de-CWKnuP52.js.map +1 -0
  15. package/dist/_chunks/de-DTmDEg-O.mjs +21 -0
  16. package/dist/_chunks/de-DTmDEg-O.mjs.map +1 -0
  17. package/dist/_chunks/de-Ddj7dv1L.mjs +21 -0
  18. package/dist/_chunks/de-Ddj7dv1L.mjs.map +1 -0
  19. package/dist/_chunks/de-Dihl3Ias.mjs +18 -0
  20. package/dist/_chunks/de-Dihl3Ias.mjs.map +1 -0
  21. package/dist/_chunks/de-Q1w36mLz.mjs +18 -0
  22. package/dist/_chunks/de-Q1w36mLz.mjs.map +1 -0
  23. package/dist/_chunks/{de-Bw-yMVQV.js → de-gJ7kdSEt.js} +5 -2
  24. package/dist/_chunks/de-gJ7kdSEt.js.map +1 -0
  25. package/dist/_chunks/en-BewDXOx6.mjs +18 -0
  26. package/dist/_chunks/en-BewDXOx6.mjs.map +1 -0
  27. package/dist/_chunks/en-CLhkAQFN.mjs +18 -0
  28. package/dist/_chunks/en-CLhkAQFN.mjs.map +1 -0
  29. package/dist/_chunks/en-CsZOiXCF.js +21 -0
  30. package/dist/_chunks/en-CsZOiXCF.js.map +1 -0
  31. package/dist/_chunks/{en-CFA1lEXn.mjs → en-D95_nZbi.mjs} +5 -2
  32. package/dist/_chunks/en-D95_nZbi.mjs.map +1 -0
  33. package/dist/_chunks/en-D9kJQSFJ.mjs +18 -0
  34. package/dist/_chunks/en-D9kJQSFJ.mjs.map +1 -0
  35. package/dist/_chunks/en-DAz6J9zn.mjs +21 -0
  36. package/dist/_chunks/en-DAz6J9zn.mjs.map +1 -0
  37. package/dist/_chunks/en-DLaUZYDS.js +18 -0
  38. package/dist/_chunks/en-DLaUZYDS.js.map +1 -0
  39. package/dist/_chunks/en-DYulQU0k.js +18 -0
  40. package/dist/_chunks/en-DYulQU0k.js.map +1 -0
  41. package/dist/_chunks/en-DnJVBcLD.js +21 -0
  42. package/dist/_chunks/en-DnJVBcLD.js.map +1 -0
  43. package/dist/_chunks/en-DoY8oT6J.mjs +20 -0
  44. package/dist/_chunks/en-DoY8oT6J.mjs.map +1 -0
  45. package/dist/_chunks/en-KBsfE-wl.js +20 -0
  46. package/dist/_chunks/en-KBsfE-wl.js.map +1 -0
  47. package/dist/_chunks/{en-3qeM6Pow.js → en-M82I7rpF.js} +5 -2
  48. package/dist/_chunks/en-M82I7rpF.js.map +1 -0
  49. package/dist/_chunks/en-ZUxemNYv.mjs +21 -0
  50. package/dist/_chunks/en-ZUxemNYv.mjs.map +1 -0
  51. package/dist/_chunks/en-qS79Ntgi.js +18 -0
  52. package/dist/_chunks/en-qS79Ntgi.js.map +1 -0
  53. package/dist/_chunks/index-0LFPz2bc.mjs +333 -0
  54. package/dist/_chunks/index-0LFPz2bc.mjs.map +1 -0
  55. package/dist/_chunks/index-14SFT3N1.mjs +51 -0
  56. package/dist/_chunks/index-14SFT3N1.mjs.map +1 -0
  57. package/dist/_chunks/index-17Ih4fSH.mjs +333 -0
  58. package/dist/_chunks/index-17Ih4fSH.mjs.map +1 -0
  59. package/dist/_chunks/index-1NUzkFkq.js +332 -0
  60. package/dist/_chunks/index-1NUzkFkq.js.map +1 -0
  61. package/dist/_chunks/index-1vN_PjV8.mjs +39 -0
  62. package/dist/_chunks/index-1vN_PjV8.mjs.map +1 -0
  63. package/dist/_chunks/index-2BotFI9v.js +332 -0
  64. package/dist/_chunks/index-2BotFI9v.js.map +1 -0
  65. package/dist/_chunks/index-2JlYEqAK.mjs +333 -0
  66. package/dist/_chunks/index-2JlYEqAK.mjs.map +1 -0
  67. package/dist/_chunks/index-3jL7fDPW.mjs +333 -0
  68. package/dist/_chunks/index-3jL7fDPW.mjs.map +1 -0
  69. package/dist/_chunks/index-5Z5QT3Uv.js +39 -0
  70. package/dist/_chunks/index-5Z5QT3Uv.js.map +1 -0
  71. package/dist/_chunks/index-6889RcyN.js +24 -0
  72. package/dist/_chunks/index-6889RcyN.js.map +1 -0
  73. package/dist/_chunks/index-6CeM3yw2.js +332 -0
  74. package/dist/_chunks/index-6CeM3yw2.js.map +1 -0
  75. package/dist/_chunks/index-6uFTRYQl.js +51 -0
  76. package/dist/_chunks/index-6uFTRYQl.js.map +1 -0
  77. package/dist/_chunks/index-749EU70b.mjs +333 -0
  78. package/dist/_chunks/index-749EU70b.mjs.map +1 -0
  79. package/dist/_chunks/index-7E4NvZ3r.js +51 -0
  80. package/dist/_chunks/index-7E4NvZ3r.js.map +1 -0
  81. package/dist/_chunks/index-8bVU_F9C.mjs +26 -0
  82. package/dist/_chunks/index-8bVU_F9C.mjs.map +1 -0
  83. package/dist/_chunks/index-9_MUcFIt.js +332 -0
  84. package/dist/_chunks/index-9_MUcFIt.js.map +1 -0
  85. package/dist/_chunks/index-B1LAs0lJ.js +332 -0
  86. package/dist/_chunks/index-B1LAs0lJ.js.map +1 -0
  87. package/dist/_chunks/index-B1S2_byk.mjs +333 -0
  88. package/dist/_chunks/index-B1S2_byk.mjs.map +1 -0
  89. package/dist/_chunks/index-B2fnq69K.mjs +333 -0
  90. package/dist/_chunks/index-B2fnq69K.mjs.map +1 -0
  91. package/dist/_chunks/index-B2uGe7jC.mjs +20 -0
  92. package/dist/_chunks/index-B2uGe7jC.mjs.map +1 -0
  93. package/dist/_chunks/index-B59MLQLw.mjs +11 -0
  94. package/dist/_chunks/index-B59MLQLw.mjs.map +1 -0
  95. package/dist/_chunks/index-B5QTbDwr.js +332 -0
  96. package/dist/_chunks/index-B5QTbDwr.js.map +1 -0
  97. package/dist/_chunks/index-B7yVxbct.mjs +27 -0
  98. package/dist/_chunks/index-B7yVxbct.mjs.map +1 -0
  99. package/dist/_chunks/index-B82A0Jo4.js +11 -0
  100. package/dist/_chunks/index-B82A0Jo4.js.map +1 -0
  101. package/dist/_chunks/index-B8nD8zgu.js +26 -0
  102. package/dist/_chunks/index-B8nD8zgu.js.map +1 -0
  103. package/dist/_chunks/index-B8xwdPE_.js +332 -0
  104. package/dist/_chunks/index-B8xwdPE_.js.map +1 -0
  105. package/dist/_chunks/index-B97dUO78.js +35 -0
  106. package/dist/_chunks/index-B97dUO78.js.map +1 -0
  107. package/dist/_chunks/index-BBLvUbHy.mjs +333 -0
  108. package/dist/_chunks/index-BBLvUbHy.mjs.map +1 -0
  109. package/dist/_chunks/index-BCPzWajZ.js +332 -0
  110. package/dist/_chunks/index-BCPzWajZ.js.map +1 -0
  111. package/dist/_chunks/index-BD4WptqA.mjs +26 -0
  112. package/dist/_chunks/index-BD4WptqA.mjs.map +1 -0
  113. package/dist/_chunks/index-BD5B6tdh.mjs +10 -0
  114. package/dist/_chunks/index-BD5B6tdh.mjs.map +1 -0
  115. package/dist/_chunks/index-BDocLncW.js +332 -0
  116. package/dist/_chunks/index-BDocLncW.js.map +1 -0
  117. package/dist/_chunks/index-BEEJXDXj.mjs +333 -0
  118. package/dist/_chunks/index-BEEJXDXj.mjs.map +1 -0
  119. package/dist/_chunks/index-BEeOtSCP.mjs +51 -0
  120. package/dist/_chunks/index-BEeOtSCP.mjs.map +1 -0
  121. package/dist/_chunks/index-BFPdll2T.mjs +333 -0
  122. package/dist/_chunks/index-BFPdll2T.mjs.map +1 -0
  123. package/dist/_chunks/index-BH9IEtJD.js +332 -0
  124. package/dist/_chunks/index-BH9IEtJD.js.map +1 -0
  125. package/dist/_chunks/index-BIr4VTT7.js +332 -0
  126. package/dist/_chunks/index-BIr4VTT7.js.map +1 -0
  127. package/dist/_chunks/index-BJSfLH7v.mjs +333 -0
  128. package/dist/_chunks/index-BJSfLH7v.mjs.map +1 -0
  129. package/dist/_chunks/index-BJTd_fc6.js +35 -0
  130. package/dist/_chunks/index-BJTd_fc6.js.map +1 -0
  131. package/dist/_chunks/index-BJuyogmx.js +26 -0
  132. package/dist/_chunks/index-BJuyogmx.js.map +1 -0
  133. package/dist/_chunks/index-BLUsbzym.mjs +333 -0
  134. package/dist/_chunks/index-BLUsbzym.mjs.map +1 -0
  135. package/dist/_chunks/index-BMs0sQ4T.js +26 -0
  136. package/dist/_chunks/index-BMs0sQ4T.js.map +1 -0
  137. package/dist/_chunks/index-BO6q3bys.mjs +333 -0
  138. package/dist/_chunks/index-BO6q3bys.mjs.map +1 -0
  139. package/dist/_chunks/index-BOD0OSIQ.js +332 -0
  140. package/dist/_chunks/index-BOD0OSIQ.js.map +1 -0
  141. package/dist/_chunks/index-BOcDcwej.js +33 -0
  142. package/dist/_chunks/index-BOcDcwej.js.map +1 -0
  143. package/dist/_chunks/index-BPBBFdba.js +51 -0
  144. package/dist/_chunks/index-BPBBFdba.js.map +1 -0
  145. package/dist/_chunks/index-BQx82NbD.mjs +39 -0
  146. package/dist/_chunks/index-BQx82NbD.mjs.map +1 -0
  147. package/dist/_chunks/index-BWdkdIMm.js +332 -0
  148. package/dist/_chunks/index-BWdkdIMm.js.map +1 -0
  149. package/dist/_chunks/index-BYo9SMUu.js +332 -0
  150. package/dist/_chunks/index-BYo9SMUu.js.map +1 -0
  151. package/dist/_chunks/index-BYvdmbO7.mjs +39 -0
  152. package/dist/_chunks/index-BYvdmbO7.mjs.map +1 -0
  153. package/dist/_chunks/index-Bb5AQTnw.mjs +51 -0
  154. package/dist/_chunks/index-Bb5AQTnw.mjs.map +1 -0
  155. package/dist/_chunks/index-BcZZJWP2.js +27 -0
  156. package/dist/_chunks/index-BcZZJWP2.js.map +1 -0
  157. package/dist/_chunks/index-BcpKQZ2P.js +26 -0
  158. package/dist/_chunks/index-BcpKQZ2P.js.map +1 -0
  159. package/dist/_chunks/index-Bd9nikDV.js +51 -0
  160. package/dist/_chunks/index-Bd9nikDV.js.map +1 -0
  161. package/dist/_chunks/index-BgVhQQ5m.mjs +333 -0
  162. package/dist/_chunks/index-BgVhQQ5m.mjs.map +1 -0
  163. package/dist/_chunks/index-BhqXxudN.js +332 -0
  164. package/dist/_chunks/index-BhqXxudN.js.map +1 -0
  165. package/dist/_chunks/index-BjfpApKO.mjs +333 -0
  166. package/dist/_chunks/index-BjfpApKO.mjs.map +1 -0
  167. package/dist/_chunks/index-Bk6rmP3r.js +35 -0
  168. package/dist/_chunks/index-Bk6rmP3r.js.map +1 -0
  169. package/dist/_chunks/index-BmytYpXA.js +332 -0
  170. package/dist/_chunks/index-BmytYpXA.js.map +1 -0
  171. package/dist/_chunks/index-Bn46vVqs.js +51 -0
  172. package/dist/_chunks/index-Bn46vVqs.js.map +1 -0
  173. package/dist/_chunks/index-BnTcvqky.js +332 -0
  174. package/dist/_chunks/index-BnTcvqky.js.map +1 -0
  175. package/dist/_chunks/index-Btk6M_fA.js +332 -0
  176. package/dist/_chunks/index-Btk6M_fA.js.map +1 -0
  177. package/dist/_chunks/index-BwUy2_un.js +332 -0
  178. package/dist/_chunks/index-BwUy2_un.js.map +1 -0
  179. package/dist/_chunks/index-C-PR86RD.mjs +26 -0
  180. package/dist/_chunks/index-C-PR86RD.mjs.map +1 -0
  181. package/dist/_chunks/index-C-PpqwIN.js +39 -0
  182. package/dist/_chunks/index-C-PpqwIN.js.map +1 -0
  183. package/dist/_chunks/index-C1EFByIA.js +332 -0
  184. package/dist/_chunks/index-C1EFByIA.js.map +1 -0
  185. package/dist/_chunks/index-C2O9LMRa.js +26 -0
  186. package/dist/_chunks/index-C2O9LMRa.js.map +1 -0
  187. package/dist/_chunks/index-C7uHEWs5.js +332 -0
  188. package/dist/_chunks/index-C7uHEWs5.js.map +1 -0
  189. package/dist/_chunks/index-CB46gX1v.js +42 -0
  190. package/dist/_chunks/index-CB46gX1v.js.map +1 -0
  191. package/dist/_chunks/index-CChFb3D5.mjs +11 -0
  192. package/dist/_chunks/index-CChFb3D5.mjs.map +1 -0
  193. package/dist/_chunks/index-CEeS79tY.js +332 -0
  194. package/dist/_chunks/index-CEeS79tY.js.map +1 -0
  195. package/dist/_chunks/index-CGXPwy0_.js +26 -0
  196. package/dist/_chunks/index-CGXPwy0_.js.map +1 -0
  197. package/dist/_chunks/index-CIkUFmSg.mjs +51 -0
  198. package/dist/_chunks/index-CIkUFmSg.mjs.map +1 -0
  199. package/dist/_chunks/index-CLFH_Mix.js +26 -0
  200. package/dist/_chunks/index-CLFH_Mix.js.map +1 -0
  201. package/dist/_chunks/index-CNdnmVNv.mjs +333 -0
  202. package/dist/_chunks/index-CNdnmVNv.mjs.map +1 -0
  203. package/dist/_chunks/index-CRQzOgeM.js +51 -0
  204. package/dist/_chunks/index-CRQzOgeM.js.map +1 -0
  205. package/dist/_chunks/index-CSgZQsU_.js +332 -0
  206. package/dist/_chunks/index-CSgZQsU_.js.map +1 -0
  207. package/dist/_chunks/index-CTCao2V6.js +52 -0
  208. package/dist/_chunks/index-CTCao2V6.js.map +1 -0
  209. package/dist/_chunks/index-CUQM3_IH.js +11 -0
  210. package/dist/_chunks/index-CUQM3_IH.js.map +1 -0
  211. package/dist/_chunks/index-CUq3KsxL.mjs +11 -0
  212. package/dist/_chunks/index-CUq3KsxL.mjs.map +1 -0
  213. package/dist/_chunks/index-CWoll-k2.mjs +52 -0
  214. package/dist/_chunks/index-CWoll-k2.mjs.map +1 -0
  215. package/dist/_chunks/index-CZco0cuK.js +51 -0
  216. package/dist/_chunks/index-CZco0cuK.js.map +1 -0
  217. package/dist/_chunks/index-CZx6-aIU.mjs +333 -0
  218. package/dist/_chunks/index-CZx6-aIU.mjs.map +1 -0
  219. package/dist/_chunks/index-C_HDOFKi.mjs +33 -0
  220. package/dist/_chunks/index-C_HDOFKi.mjs.map +1 -0
  221. package/dist/_chunks/index-Cajyonzp.js +35 -0
  222. package/dist/_chunks/index-Cajyonzp.js.map +1 -0
  223. package/dist/_chunks/index-CdYJTRXV.js +332 -0
  224. package/dist/_chunks/index-CdYJTRXV.js.map +1 -0
  225. package/dist/_chunks/index-CeJ19q5Q.mjs +35 -0
  226. package/dist/_chunks/index-CeJ19q5Q.mjs.map +1 -0
  227. package/dist/_chunks/index-CelAlD2Q.mjs +40 -0
  228. package/dist/_chunks/index-CelAlD2Q.mjs.map +1 -0
  229. package/dist/_chunks/index-Cg0WPCJs.mjs +333 -0
  230. package/dist/_chunks/index-Cg0WPCJs.mjs.map +1 -0
  231. package/dist/_chunks/index-CiJL3_26.mjs +333 -0
  232. package/dist/_chunks/index-CiJL3_26.mjs.map +1 -0
  233. package/dist/_chunks/index-ClPi2eHF.js +332 -0
  234. package/dist/_chunks/index-ClPi2eHF.js.map +1 -0
  235. package/dist/_chunks/index-Co_JvSFV.mjs +51 -0
  236. package/dist/_chunks/index-Co_JvSFV.mjs.map +1 -0
  237. package/dist/_chunks/index-CwIdvPAC.mjs +51 -0
  238. package/dist/_chunks/index-CwIdvPAC.mjs.map +1 -0
  239. package/dist/_chunks/index-D-Gptksr.js +33 -0
  240. package/dist/_chunks/index-D-Gptksr.js.map +1 -0
  241. package/dist/_chunks/index-D0yTVMeC.mjs +39 -0
  242. package/dist/_chunks/index-D0yTVMeC.mjs.map +1 -0
  243. package/dist/_chunks/index-D1A_00w5.mjs +333 -0
  244. package/dist/_chunks/index-D1A_00w5.mjs.map +1 -0
  245. package/dist/_chunks/index-D1UaYacs.mjs +27 -0
  246. package/dist/_chunks/index-D1UaYacs.mjs.map +1 -0
  247. package/dist/_chunks/index-D2zGgl2w.mjs +51 -0
  248. package/dist/_chunks/index-D2zGgl2w.mjs.map +1 -0
  249. package/dist/_chunks/index-D3-6uXvW.mjs +333 -0
  250. package/dist/_chunks/index-D3-6uXvW.mjs.map +1 -0
  251. package/dist/_chunks/index-D737t-4o.mjs +26 -0
  252. package/dist/_chunks/index-D737t-4o.mjs.map +1 -0
  253. package/dist/_chunks/index-D8-HrxmE.mjs +33 -0
  254. package/dist/_chunks/index-D8-HrxmE.mjs.map +1 -0
  255. package/dist/_chunks/index-D9aVdZ2c.js +51 -0
  256. package/dist/_chunks/index-D9aVdZ2c.js.map +1 -0
  257. package/dist/_chunks/index-DCzdJhzW.mjs +333 -0
  258. package/dist/_chunks/index-DCzdJhzW.mjs.map +1 -0
  259. package/dist/_chunks/index-DDz7JEzh.js +51 -0
  260. package/dist/_chunks/index-DDz7JEzh.js.map +1 -0
  261. package/dist/_chunks/index-DG6b_lDq.mjs +333 -0
  262. package/dist/_chunks/index-DG6b_lDq.mjs.map +1 -0
  263. package/dist/_chunks/index-DH66vQnJ.mjs +333 -0
  264. package/dist/_chunks/index-DH66vQnJ.mjs.map +1 -0
  265. package/dist/_chunks/index-DJUMPn8G.mjs +24 -0
  266. package/dist/_chunks/index-DJUMPn8G.mjs.map +1 -0
  267. package/dist/_chunks/index-DNCp3Sqv.js +35 -0
  268. package/dist/_chunks/index-DNCp3Sqv.js.map +1 -0
  269. package/dist/_chunks/index-DNDL_klT.mjs +35 -0
  270. package/dist/_chunks/index-DNDL_klT.mjs.map +1 -0
  271. package/dist/_chunks/index-DOArJxeA.mjs +333 -0
  272. package/dist/_chunks/index-DOArJxeA.mjs.map +1 -0
  273. package/dist/_chunks/index-DPCgcxx7.mjs +333 -0
  274. package/dist/_chunks/index-DPCgcxx7.mjs.map +1 -0
  275. package/dist/_chunks/index-DPcHpT6b.js +26 -0
  276. package/dist/_chunks/index-DPcHpT6b.js.map +1 -0
  277. package/dist/_chunks/index-DRZVqKtb.mjs +35 -0
  278. package/dist/_chunks/index-DRZVqKtb.mjs.map +1 -0
  279. package/dist/_chunks/index-DU2rOpse.mjs +333 -0
  280. package/dist/_chunks/index-DU2rOpse.mjs.map +1 -0
  281. package/dist/_chunks/index-DU9Ihqiu.js +26 -0
  282. package/dist/_chunks/index-DU9Ihqiu.js.map +1 -0
  283. package/dist/_chunks/index-DWAiG9eT.js +332 -0
  284. package/dist/_chunks/index-DWAiG9eT.js.map +1 -0
  285. package/dist/_chunks/index-DWwk5GLU.mjs +51 -0
  286. package/dist/_chunks/index-DWwk5GLU.mjs.map +1 -0
  287. package/dist/_chunks/index-DX3OfrDJ.js +26 -0
  288. package/dist/_chunks/index-DX3OfrDJ.js.map +1 -0
  289. package/dist/_chunks/index-DXZtG4D8.js +11 -0
  290. package/dist/_chunks/index-DXZtG4D8.js.map +1 -0
  291. package/dist/_chunks/index-DZ5lzQYz.js +11 -0
  292. package/dist/_chunks/index-DZ5lzQYz.js.map +1 -0
  293. package/dist/_chunks/index-DZMAifni.mjs +26 -0
  294. package/dist/_chunks/index-DZMAifni.mjs.map +1 -0
  295. package/dist/_chunks/index-DZnAjCBz.js +332 -0
  296. package/dist/_chunks/index-DZnAjCBz.js.map +1 -0
  297. package/dist/_chunks/index-DbAMftaP.js +332 -0
  298. package/dist/_chunks/index-DbAMftaP.js.map +1 -0
  299. package/dist/_chunks/index-Dbm0hBZC.js +332 -0
  300. package/dist/_chunks/index-Dbm0hBZC.js.map +1 -0
  301. package/dist/_chunks/index-DglOshol.js +26 -0
  302. package/dist/_chunks/index-DglOshol.js.map +1 -0
  303. package/dist/_chunks/index-Djom_nQa.mjs +333 -0
  304. package/dist/_chunks/index-Djom_nQa.mjs.map +1 -0
  305. package/dist/_chunks/index-DkG79Xua.js +332 -0
  306. package/dist/_chunks/index-DkG79Xua.js.map +1 -0
  307. package/dist/_chunks/index-DlCEVkda.js +10 -0
  308. package/dist/_chunks/index-DlCEVkda.js.map +1 -0
  309. package/dist/_chunks/index-DlrR4xk3.js +51 -0
  310. package/dist/_chunks/index-DlrR4xk3.js.map +1 -0
  311. package/dist/_chunks/index-DmWMbHrN.mjs +333 -0
  312. package/dist/_chunks/index-DmWMbHrN.mjs.map +1 -0
  313. package/dist/_chunks/index-DmtOtMph.mjs +39 -0
  314. package/dist/_chunks/index-DmtOtMph.mjs.map +1 -0
  315. package/dist/_chunks/index-DqDx3KVS.js +51 -0
  316. package/dist/_chunks/index-DqDx3KVS.js.map +1 -0
  317. package/dist/_chunks/index-DqVVRs3j.mjs +333 -0
  318. package/dist/_chunks/index-DqVVRs3j.mjs.map +1 -0
  319. package/dist/_chunks/index-DwKNBU_I.js +10 -0
  320. package/dist/_chunks/index-DwKNBU_I.js.map +1 -0
  321. package/dist/_chunks/index-DwqJrgdS.js +332 -0
  322. package/dist/_chunks/index-DwqJrgdS.js.map +1 -0
  323. package/dist/_chunks/index-Dxvy92_A.js +52 -0
  324. package/dist/_chunks/index-Dxvy92_A.js.map +1 -0
  325. package/dist/_chunks/index-DxzcHKzo.mjs +333 -0
  326. package/dist/_chunks/index-DxzcHKzo.mjs.map +1 -0
  327. package/dist/_chunks/index-Dy11_rTk.js +25 -0
  328. package/dist/_chunks/index-Dy11_rTk.js.map +1 -0
  329. package/dist/_chunks/index-Dy2qWaa2.mjs +333 -0
  330. package/dist/_chunks/index-Dy2qWaa2.mjs.map +1 -0
  331. package/dist/_chunks/index-Dz_C90Uw.mjs +25 -0
  332. package/dist/_chunks/index-Dz_C90Uw.mjs.map +1 -0
  333. package/dist/_chunks/index-EO6ncD4P.mjs +26 -0
  334. package/dist/_chunks/index-EO6ncD4P.mjs.map +1 -0
  335. package/dist/_chunks/index-F8K1BJrY.js +332 -0
  336. package/dist/_chunks/index-F8K1BJrY.js.map +1 -0
  337. package/dist/_chunks/index-FOS4mqdv.js +39 -0
  338. package/dist/_chunks/index-FOS4mqdv.js.map +1 -0
  339. package/dist/_chunks/index-FdJkKIm-.js +27 -0
  340. package/dist/_chunks/index-FdJkKIm-.js.map +1 -0
  341. package/dist/_chunks/index-IRZkd-GV.mjs +333 -0
  342. package/dist/_chunks/index-IRZkd-GV.mjs.map +1 -0
  343. package/dist/_chunks/index-Ihoq7N27.js +39 -0
  344. package/dist/_chunks/index-Ihoq7N27.js.map +1 -0
  345. package/dist/_chunks/index-Ju5-qd9f.mjs +51 -0
  346. package/dist/_chunks/index-Ju5-qd9f.mjs.map +1 -0
  347. package/dist/_chunks/index-KRsS4Q5E.js +332 -0
  348. package/dist/_chunks/index-KRsS4Q5E.js.map +1 -0
  349. package/dist/_chunks/index-O0FUr6y8.mjs +35 -0
  350. package/dist/_chunks/index-O0FUr6y8.mjs.map +1 -0
  351. package/dist/_chunks/index-O9oaphD1.mjs +26 -0
  352. package/dist/_chunks/index-O9oaphD1.mjs.map +1 -0
  353. package/dist/_chunks/index-OfmPI0qM.mjs +333 -0
  354. package/dist/_chunks/index-OfmPI0qM.mjs.map +1 -0
  355. package/dist/_chunks/index-PqxNGCPC.js +39 -0
  356. package/dist/_chunks/index-PqxNGCPC.js.map +1 -0
  357. package/dist/_chunks/index-QPw9JMM7.js +26 -0
  358. package/dist/_chunks/index-QPw9JMM7.js.map +1 -0
  359. package/dist/_chunks/index-RPgFQ8JN.js +11 -0
  360. package/dist/_chunks/index-RPgFQ8JN.js.map +1 -0
  361. package/dist/_chunks/index-RkGmI_5a.js +332 -0
  362. package/dist/_chunks/index-RkGmI_5a.js.map +1 -0
  363. package/dist/_chunks/index-RuWEiyPC.mjs +10 -0
  364. package/dist/_chunks/index-RuWEiyPC.mjs.map +1 -0
  365. package/dist/_chunks/index-Vm82ncrB.mjs +26 -0
  366. package/dist/_chunks/index-Vm82ncrB.mjs.map +1 -0
  367. package/dist/_chunks/index-Vt7G91cP.mjs +11 -0
  368. package/dist/_chunks/index-Vt7G91cP.mjs.map +1 -0
  369. package/dist/_chunks/index-YhzGM_It.mjs +35 -0
  370. package/dist/_chunks/index-YhzGM_It.mjs.map +1 -0
  371. package/dist/_chunks/index-ZqLzNBtG.mjs +26 -0
  372. package/dist/_chunks/index-ZqLzNBtG.mjs.map +1 -0
  373. package/dist/_chunks/index-fNfPzwf2.js +332 -0
  374. package/dist/_chunks/index-fNfPzwf2.js.map +1 -0
  375. package/dist/_chunks/index-g48HHxYy.mjs +26 -0
  376. package/dist/_chunks/index-g48HHxYy.mjs.map +1 -0
  377. package/dist/_chunks/index-gTgo3YNx.js +11 -0
  378. package/dist/_chunks/index-gTgo3YNx.js.map +1 -0
  379. package/dist/_chunks/index-ig6Hb9po.mjs +11 -0
  380. package/dist/_chunks/index-ig6Hb9po.mjs.map +1 -0
  381. package/dist/_chunks/index-k62BjD6g.mjs +26 -0
  382. package/dist/_chunks/index-k62BjD6g.mjs.map +1 -0
  383. package/dist/_chunks/index-keqbR8Rb.js +332 -0
  384. package/dist/_chunks/index-keqbR8Rb.js.map +1 -0
  385. package/dist/_chunks/index-lpvX9ndv.mjs +333 -0
  386. package/dist/_chunks/index-lpvX9ndv.mjs.map +1 -0
  387. package/dist/_chunks/index-mLpi6WXe.mjs +26 -0
  388. package/dist/_chunks/index-mLpi6WXe.mjs.map +1 -0
  389. package/dist/_chunks/index-rO6eiMQV.mjs +333 -0
  390. package/dist/_chunks/index-rO6eiMQV.mjs.map +1 -0
  391. package/dist/_chunks/index-t1SN83-K.mjs +51 -0
  392. package/dist/_chunks/index-t1SN83-K.mjs.map +1 -0
  393. package/dist/_chunks/index-uIh12_Oa.mjs +52 -0
  394. package/dist/_chunks/index-uIh12_Oa.mjs.map +1 -0
  395. package/dist/_chunks/index-xXDvLN5W.mjs +51 -0
  396. package/dist/_chunks/index-xXDvLN5W.mjs.map +1 -0
  397. package/dist/_chunks/index-yNivr0uw.mjs +11 -0
  398. package/dist/_chunks/index-yNivr0uw.mjs.map +1 -0
  399. package/dist/_chunks/index-z_wVLOOa.js +20 -0
  400. package/dist/_chunks/index-z_wVLOOa.js.map +1 -0
  401. package/dist/admin/index.js +2 -220
  402. package/dist/admin/index.js.map +1 -1
  403. package/dist/admin/index.mjs +2 -220
  404. package/dist/admin/index.mjs.map +1 -1
  405. package/dist/admin/src/components/SettingsPage/index.d.ts +2 -0
  406. package/dist/admin/src/hooks/index.d.ts +4 -0
  407. package/dist/admin/src/hooks/useCacheConfig.d.ts +10 -0
  408. package/dist/admin/src/hooks/useCacheNotifications.d.ts +7 -0
  409. package/dist/admin/src/hooks/useCacheOperations.d.ts +10 -0
  410. package/dist/admin/src/hooks/useCachePermissions.d.ts +4 -0
  411. package/package.json +7 -6
  412. package/dist/_chunks/de-Bw-yMVQV.js.map +0 -1
  413. package/dist/_chunks/de-OlWEMza0.mjs.map +0 -1
  414. package/dist/_chunks/en-3qeM6Pow.js.map +0 -1
  415. package/dist/_chunks/en-CFA1lEXn.mjs.map +0 -1
  416. package/dist/admin/src/components/PurgeModal/PurgeButton/index.d.ts +0 -4
@@ -1,222 +1,4 @@
1
1
  "use strict";
2
- const react = require("react");
3
- const jsxRuntime = require("react/jsx-runtime");
4
- const admin = require("@strapi/strapi/admin");
5
- const reactIntl = require("react-intl");
6
- const icons = require("@strapi/icons");
7
- const designSystem = require("@strapi/design-system");
8
- const __variableDynamicImportRuntimeHelper = (glob, path, segs) => {
9
- const v = glob[path];
10
- if (v) {
11
- return typeof v === "function" ? v() : Promise.resolve(v);
12
- }
13
- return new Promise((_, reject) => {
14
- (typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(
15
- reject.bind(
16
- null,
17
- new Error(
18
- "Unknown variable dynamic import: " + path + (path.split("/").length !== segs ? ". Note that variables only represent file names one level deep." : "")
19
- )
20
- )
21
- );
22
- });
23
- };
24
- const PLUGIN_ID = "strapi-cache";
25
- const Initializer = ({ setPlugin }) => {
26
- const ref = react.useRef(setPlugin);
27
- react.useEffect(() => {
28
- ref.current(PLUGIN_ID);
29
- }, []);
30
- return null;
31
- };
32
- const pluginPermissions = {
33
- purge: [{ action: "plugin::strapi-cache.purge-cache", subject: null }]
34
- };
35
- function PurgeButton({ onClick }) {
36
- const formatMessage = reactIntl.useIntl().formatMessage;
37
- return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { onClick, children: formatMessage({
38
- id: "strapi-cache.cache.confirm",
39
- defaultMessage: "Yes, confirm"
40
- }) });
41
- }
42
- function PurgeModal({ buttonText, keyToUse, buttonWidth, contentTypeName }) {
43
- const { allowedActions } = admin.useRBAC(pluginPermissions);
44
- const formatMessage = reactIntl.useIntl().formatMessage;
45
- const { post, get } = admin.useFetchClient();
46
- const { toggleNotification } = admin.useNotification();
47
- const [config, setConfig] = react.useState();
48
- react.useEffect(() => {
49
- if (!allowedActions.canPurgeCache) {
50
- return;
51
- }
52
- const fetchConfig = async () => {
53
- try {
54
- const { data } = await get("/strapi-cache/config");
55
- return data;
56
- } catch (error) {
57
- const isPermissionError = error?.response?.status === 403 || error?.response?.status === 401;
58
- if (!isPermissionError && !config?.disableAdminPopups) {
59
- toggleNotification({
60
- type: "warning",
61
- message: formatMessage({
62
- id: "strapi-cache.cache.routes.fetch-error",
63
- defaultMessage: "Unable to fetch cache config. Cache purge may not work correctly."
64
- })
65
- });
66
- }
67
- return void 0;
68
- }
69
- };
70
- fetchConfig().then((data) => {
71
- setConfig(data);
72
- });
73
- }, [allowedActions.canPurgeCache]);
74
- const isCacheableRoute = () => {
75
- if (!keyToUse || !config) {
76
- return false;
77
- }
78
- const { cacheableRoutes } = config;
79
- return cacheableRoutes.length === 0 || cacheableRoutes.some((route) => {
80
- return route.includes(keyToUse) || contentTypeName && route.includes(contentTypeName);
81
- });
82
- };
83
- const clearCache = () => {
84
- if (!keyToUse && !config?.disableAdminPopups) {
85
- toggleNotification({
86
- type: "warning",
87
- message: formatMessage({
88
- id: "strapi-cache.cache.purge.no-content-type",
89
- defaultMessage: "No content type found"
90
- })
91
- });
92
- return;
93
- }
94
- post(`/strapi-cache/purge-cache/${keyToUse}`, void 0, {
95
- headers: {
96
- "Content-Type": "application/json"
97
- }
98
- }).then(() => {
99
- if (!config?.disableAdminPopups) {
100
- toggleNotification({
101
- type: "success",
102
- message: formatMessage(
103
- {
104
- id: "strapi-cache.cache.purge.success",
105
- defaultMessage: "Cache purged successfully"
106
- },
107
- {
108
- key: `"${keyToUse}"`
109
- }
110
- )
111
- });
112
- }
113
- }).catch(() => {
114
- if (!config?.disableAdminPopups) {
115
- toggleNotification({
116
- type: "danger",
117
- message: formatMessage(
118
- {
119
- id: "strapi-cache.cache.purge.error",
120
- defaultMessage: "Error purging cache"
121
- },
122
- {
123
- key: `"${keyToUse}"`
124
- }
125
- )
126
- });
127
- }
128
- });
129
- };
130
- if (!allowedActions.canPurgeCache || !isCacheableRoute()) {
131
- return null;
132
- }
133
- return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Modal.Root, { children: [
134
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Modal.Trigger, { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { width: buttonWidth, startIcon: /* @__PURE__ */ jsxRuntime.jsx(icons.Archive, {}), variant: "danger", children: buttonText }) }),
135
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Modal.Content, { children: [
136
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Modal.Header, { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Modal.Title, { children: buttonText }) }),
137
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Modal.Body, { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "omega", children: formatMessage(
138
- {
139
- id: "strapi-cache.cache.purge.confirmation",
140
- defaultMessage: "Are you sure you want to purge the cache?"
141
- },
142
- { key: `"${keyToUse}"` }
143
- ) }) }),
144
- /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Modal.Footer, { children: [
145
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Modal.Close, { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { variant: "tertiary", children: formatMessage({
146
- id: "strapi-cache.cache.cancel",
147
- defaultMessage: "No, cancel"
148
- }) }) }),
149
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Modal.Close, { children: /* @__PURE__ */ jsxRuntime.jsx(PurgeButton, { onClick: clearCache }) })
150
- ] })
151
- ] })
152
- ] });
153
- }
154
- function PurgeCacheButton() {
155
- const { contentType } = admin.unstable_useContentManagerContext();
156
- const { formatMessage } = reactIntl.useIntl();
157
- const keyToUse = contentType?.info.pluralName;
158
- return /* @__PURE__ */ jsxRuntime.jsx(
159
- PurgeModal,
160
- {
161
- buttonText: formatMessage({
162
- id: "strapi-cache.cache.purge",
163
- defaultMessage: "Purge Cache"
164
- }),
165
- keyToUse
166
- }
167
- );
168
- }
169
- function PurgeEntityButton() {
170
- const { formatMessage } = reactIntl.useIntl();
171
- const { id, isSingleType, contentType } = admin.unstable_useContentManagerContext();
172
- const apiPath = isSingleType ? contentType?.info.singularName : id;
173
- if (!apiPath) {
174
- return null;
175
- }
176
- const keyToUse = encodeURIComponent(apiPath);
177
- const contentTypeName = isSingleType ? contentType?.info.singularName : contentType?.info.pluralName;
178
- return /* @__PURE__ */ jsxRuntime.jsx(
179
- PurgeModal,
180
- {
181
- buttonWidth: "100%",
182
- buttonText: formatMessage({
183
- id: "strapi-cache.cache.purge.entity",
184
- defaultMessage: "Purge Entity Cache"
185
- }),
186
- keyToUse,
187
- contentTypeName
188
- }
189
- );
190
- }
191
- const index = {
192
- register(app) {
193
- app.registerPlugin({
194
- id: PLUGIN_ID,
195
- initializer: Initializer,
196
- isReady: false,
197
- name: PLUGIN_ID
198
- });
199
- app.getPlugin("content-manager").injectComponent("listView", "actions", {
200
- name: PurgeCacheButton,
201
- Component: PurgeCacheButton
202
- });
203
- app.getPlugin("content-manager").injectComponent("editView", "right-links", {
204
- name: PurgeEntityButton,
205
- Component: PurgeEntityButton
206
- });
207
- },
208
- async registerTrads({ locales }) {
209
- return Promise.all(
210
- locales.map(async (locale) => {
211
- try {
212
- const { default: data } = await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/de.json": () => Promise.resolve().then(() => require("../_chunks/de-Bw-yMVQV.js")), "./translations/en.json": () => Promise.resolve().then(() => require("../_chunks/en-3qeM6Pow.js")) }), `./translations/${locale}.json`, 3);
213
- return { data, locale };
214
- } catch {
215
- return { data: {}, locale };
216
- }
217
- })
218
- );
219
- }
220
- };
221
- module.exports = index;
2
+ const index = require("../_chunks/index-CEeS79tY.js");
3
+ module.exports = index.index;
222
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../admin/src/pluginId.ts","../../admin/src/components/Initializer.tsx","../../admin/src/permission.ts","../../admin/src/components/PurgeModal/PurgeButton/index.tsx","../../admin/src/components/PurgeModal/index.tsx","../../admin/src/components/PurgeCacheButton/index.tsx","../../admin/src/components/PurgeEntityButton/index.tsx","../../admin/src/index.ts"],"sourcesContent":["export const PLUGIN_ID = 'strapi-cache';\n","import { useEffect, useRef } from 'react';\n\nimport { PLUGIN_ID } from '../pluginId';\n\ntype InitializerProps = {\n setPlugin: (id: string) => void;\n};\n\nconst Initializer = ({ setPlugin }: InitializerProps) => {\n const ref = useRef(setPlugin);\n\n useEffect(() => {\n ref.current(PLUGIN_ID);\n }, []);\n\n return null;\n};\n\nexport { Initializer };\n","export const pluginPermissions = {\n purge: [{ action: 'plugin::strapi-cache.purge-cache', subject: null }],\n};\n","import { Button } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nfunction PurgeButton({ onClick }: { onClick: () => void }) {\n const formatMessage = useIntl().formatMessage;\n\n return (\n <Button onClick={onClick}>\n {formatMessage({\n id: 'strapi-cache.cache.confirm',\n defaultMessage: 'Yes, confirm',\n })}\n </Button>\n );\n}\n\nexport default PurgeButton;\n","import { useIntl } from 'react-intl';\nimport { Archive } from '@strapi/icons';\nimport { Button, Modal } from '@strapi/design-system';\nimport { useNotification, useRBAC } from '@strapi/strapi/admin';\nimport { pluginPermissions } from '../../permission';\nimport { Typography } from '@strapi/design-system';\nimport { useFetchClient } from '@strapi/strapi/admin';\nimport { useEffect, useState } from 'react';\nimport PurgeButton from './PurgeButton';\n\ntype Config = {\n cacheableRoutes: string[];\n disableAdminPopups: boolean;\n};\n\nexport type PurgeProps = {\n buttonText: string;\n buttonWidth?: string;\n keyToUse?: string;\n contentTypeName?: string;\n};\n\nfunction PurgeModal({ buttonText, keyToUse, buttonWidth, contentTypeName }: PurgeProps) {\n const { allowedActions } = useRBAC(pluginPermissions);\n const formatMessage = useIntl().formatMessage;\n const { post, get } = useFetchClient();\n const { toggleNotification } = useNotification();\n const [config, setConfig] = useState<Config>();\n\n useEffect(() => {\n if (!allowedActions.canPurgeCache) {\n return;\n }\n const fetchConfig = async () => {\n try {\n const { data } = await get('/strapi-cache/config');\n return data;\n } catch (error: any) {\n // only show error notification if its not a permissions error and popups are not disabled\n const isPermissionError =\n error?.response?.status === 403 || error?.response?.status === 401;\n if (!isPermissionError && !config?.disableAdminPopups) {\n toggleNotification({\n type: 'warning',\n message: formatMessage({\n id: 'strapi-cache.cache.routes.fetch-error',\n defaultMessage: 'Unable to fetch cache config. Cache purge may not work correctly.',\n }),\n });\n }\n return undefined;\n }\n };\n fetchConfig().then((data) => {\n setConfig(data);\n });\n }, [allowedActions.canPurgeCache]);\n\n const isCacheableRoute = () => {\n if (!keyToUse || !config) {\n return false;\n }\n\n const { cacheableRoutes } = config;\n return (\n cacheableRoutes.length === 0 ||\n cacheableRoutes.some((route) => {\n return route.includes(keyToUse) || (contentTypeName && route.includes(contentTypeName));\n })\n );\n };\n\n const clearCache = () => {\n if (!keyToUse && !config?.disableAdminPopups) {\n toggleNotification({\n type: 'warning',\n message: formatMessage({\n id: 'strapi-cache.cache.purge.no-content-type',\n defaultMessage: 'No content type found',\n }),\n });\n return;\n }\n\n post(`/strapi-cache/purge-cache/${keyToUse}`, undefined, {\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n .then(() => {\n if (!config?.disableAdminPopups) {\n toggleNotification({\n type: 'success',\n message: formatMessage(\n {\n id: 'strapi-cache.cache.purge.success',\n defaultMessage: 'Cache purged successfully',\n },\n {\n key: `\"${keyToUse}\"`,\n }\n ),\n });\n }\n })\n .catch(() => {\n if (!config?.disableAdminPopups) {\n toggleNotification({\n type: 'danger',\n message: formatMessage(\n {\n id: 'strapi-cache.cache.purge.error',\n defaultMessage: 'Error purging cache',\n },\n {\n key: `\"${keyToUse}\"`,\n }\n ),\n });\n }\n });\n };\n\n if (!allowedActions.canPurgeCache || !isCacheableRoute()) {\n return null;\n }\n\n return (\n <Modal.Root>\n <Modal.Trigger>\n <Button width={buttonWidth} startIcon={<Archive />} variant=\"danger\">\n {buttonText}\n </Button>\n </Modal.Trigger>\n <Modal.Content>\n <Modal.Header>\n <Modal.Title>{buttonText}</Modal.Title>\n </Modal.Header>\n <Modal.Body>\n <Typography variant=\"omega\">\n {formatMessage(\n {\n id: 'strapi-cache.cache.purge.confirmation',\n defaultMessage: 'Are you sure you want to purge the cache?',\n },\n { key: `\"${keyToUse}\"` }\n )}\n </Typography>\n </Modal.Body>\n <Modal.Footer>\n <Modal.Close>\n <Button variant=\"tertiary\">\n {formatMessage({\n id: 'strapi-cache.cache.cancel',\n defaultMessage: 'No, cancel',\n })}\n </Button>\n </Modal.Close>\n <Modal.Close>\n <PurgeButton onClick={clearCache}></PurgeButton>\n </Modal.Close>\n </Modal.Footer>\n </Modal.Content>\n </Modal.Root>\n );\n}\n\nexport default PurgeModal;\n","import { unstable_useContentManagerContext as useContentManagerContext } from '@strapi/strapi/admin';\nimport PurgeModal from '../PurgeModal';\nimport { useIntl } from 'react-intl';\n\nfunction PurgeCacheButton() {\n const { contentType } = useContentManagerContext();\n const { formatMessage } = useIntl();\n const keyToUse = contentType?.info.pluralName;\n\n return (\n <PurgeModal\n buttonText={formatMessage({\n id: 'strapi-cache.cache.purge',\n defaultMessage: 'Purge Cache',\n })}\n keyToUse={keyToUse}\n ></PurgeModal>\n );\n}\n\nexport default PurgeCacheButton;\n","import { unstable_useContentManagerContext as useContentManagerContext } from '@strapi/strapi/admin';\nimport PurgeModal from '../PurgeModal';\nimport { useIntl } from 'react-intl';\n\nfunction PurgeEntityButton() {\n const { formatMessage } = useIntl();\n const { id, isSingleType, contentType } = useContentManagerContext();\n const apiPath = isSingleType ? contentType?.info.singularName : id;\n\n if (!apiPath) {\n return null;\n }\n\n const keyToUse = encodeURIComponent(apiPath);\n const contentTypeName = isSingleType\n ? contentType?.info.singularName\n : contentType?.info.pluralName;\n\n return (\n <PurgeModal\n buttonWidth=\"100%\"\n buttonText={formatMessage({\n id: 'strapi-cache.cache.purge.entity',\n defaultMessage: 'Purge Entity Cache',\n })}\n keyToUse={keyToUse}\n contentTypeName={contentTypeName}\n ></PurgeModal>\n );\n}\n\nexport default PurgeEntityButton;\n","import { PLUGIN_ID } from './pluginId';\nimport { Initializer } from './components/Initializer';\nimport PurgeCacheButton from './components/PurgeCacheButton';\nimport PurgeEntityButton from './components/PurgeEntityButton';\n\nexport default {\n register(app: any) {\n app.registerPlugin({\n id: PLUGIN_ID,\n initializer: Initializer,\n isReady: false,\n name: PLUGIN_ID,\n });\n\n app.getPlugin('content-manager').injectComponent('listView', 'actions', {\n name: PurgeCacheButton,\n Component: PurgeCacheButton,\n });\n\n app.getPlugin('content-manager').injectComponent('editView', 'right-links', {\n name: PurgeEntityButton,\n Component: PurgeEntityButton,\n });\n },\n\n async registerTrads({ locales }: { locales: string[] }) {\n return Promise.all(\n locales.map(async (locale) => {\n try {\n const { default: data } = await import(`./translations/${locale}.json`);\n\n return { data, locale };\n } catch {\n return { data: {}, locale };\n }\n })\n );\n },\n};\n"],"names":["useRef","useEffect","useIntl","jsx","Button","useRBAC","useFetchClient","useNotification","useState","jsxs","Modal","Archive","Typography","useContentManagerContext"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -1,223 +1,5 @@
1
- import { useRef, useEffect, useState } from "react";
2
- import { jsx, jsxs } from "react/jsx-runtime";
3
- import { useRBAC, useFetchClient, useNotification, unstable_useContentManagerContext } from "@strapi/strapi/admin";
4
- import { useIntl } from "react-intl";
5
- import { Archive } from "@strapi/icons";
6
- import { Button, Modal, Typography } from "@strapi/design-system";
7
- const __variableDynamicImportRuntimeHelper = (glob, path, segs) => {
8
- const v = glob[path];
9
- if (v) {
10
- return typeof v === "function" ? v() : Promise.resolve(v);
11
- }
12
- return new Promise((_, reject) => {
13
- (typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(
14
- reject.bind(
15
- null,
16
- new Error(
17
- "Unknown variable dynamic import: " + path + (path.split("/").length !== segs ? ". Note that variables only represent file names one level deep." : "")
18
- )
19
- )
20
- );
21
- });
22
- };
23
- const PLUGIN_ID = "strapi-cache";
24
- const Initializer = ({ setPlugin }) => {
25
- const ref = useRef(setPlugin);
26
- useEffect(() => {
27
- ref.current(PLUGIN_ID);
28
- }, []);
29
- return null;
30
- };
31
- const pluginPermissions = {
32
- purge: [{ action: "plugin::strapi-cache.purge-cache", subject: null }]
33
- };
34
- function PurgeButton({ onClick }) {
35
- const formatMessage = useIntl().formatMessage;
36
- return /* @__PURE__ */ jsx(Button, { onClick, children: formatMessage({
37
- id: "strapi-cache.cache.confirm",
38
- defaultMessage: "Yes, confirm"
39
- }) });
40
- }
41
- function PurgeModal({ buttonText, keyToUse, buttonWidth, contentTypeName }) {
42
- const { allowedActions } = useRBAC(pluginPermissions);
43
- const formatMessage = useIntl().formatMessage;
44
- const { post, get } = useFetchClient();
45
- const { toggleNotification } = useNotification();
46
- const [config, setConfig] = useState();
47
- useEffect(() => {
48
- if (!allowedActions.canPurgeCache) {
49
- return;
50
- }
51
- const fetchConfig = async () => {
52
- try {
53
- const { data } = await get("/strapi-cache/config");
54
- return data;
55
- } catch (error) {
56
- const isPermissionError = error?.response?.status === 403 || error?.response?.status === 401;
57
- if (!isPermissionError && !config?.disableAdminPopups) {
58
- toggleNotification({
59
- type: "warning",
60
- message: formatMessage({
61
- id: "strapi-cache.cache.routes.fetch-error",
62
- defaultMessage: "Unable to fetch cache config. Cache purge may not work correctly."
63
- })
64
- });
65
- }
66
- return void 0;
67
- }
68
- };
69
- fetchConfig().then((data) => {
70
- setConfig(data);
71
- });
72
- }, [allowedActions.canPurgeCache]);
73
- const isCacheableRoute = () => {
74
- if (!keyToUse || !config) {
75
- return false;
76
- }
77
- const { cacheableRoutes } = config;
78
- return cacheableRoutes.length === 0 || cacheableRoutes.some((route) => {
79
- return route.includes(keyToUse) || contentTypeName && route.includes(contentTypeName);
80
- });
81
- };
82
- const clearCache = () => {
83
- if (!keyToUse && !config?.disableAdminPopups) {
84
- toggleNotification({
85
- type: "warning",
86
- message: formatMessage({
87
- id: "strapi-cache.cache.purge.no-content-type",
88
- defaultMessage: "No content type found"
89
- })
90
- });
91
- return;
92
- }
93
- post(`/strapi-cache/purge-cache/${keyToUse}`, void 0, {
94
- headers: {
95
- "Content-Type": "application/json"
96
- }
97
- }).then(() => {
98
- if (!config?.disableAdminPopups) {
99
- toggleNotification({
100
- type: "success",
101
- message: formatMessage(
102
- {
103
- id: "strapi-cache.cache.purge.success",
104
- defaultMessage: "Cache purged successfully"
105
- },
106
- {
107
- key: `"${keyToUse}"`
108
- }
109
- )
110
- });
111
- }
112
- }).catch(() => {
113
- if (!config?.disableAdminPopups) {
114
- toggleNotification({
115
- type: "danger",
116
- message: formatMessage(
117
- {
118
- id: "strapi-cache.cache.purge.error",
119
- defaultMessage: "Error purging cache"
120
- },
121
- {
122
- key: `"${keyToUse}"`
123
- }
124
- )
125
- });
126
- }
127
- });
128
- };
129
- if (!allowedActions.canPurgeCache || !isCacheableRoute()) {
130
- return null;
131
- }
132
- return /* @__PURE__ */ jsxs(Modal.Root, { children: [
133
- /* @__PURE__ */ jsx(Modal.Trigger, { children: /* @__PURE__ */ jsx(Button, { width: buttonWidth, startIcon: /* @__PURE__ */ jsx(Archive, {}), variant: "danger", children: buttonText }) }),
134
- /* @__PURE__ */ jsxs(Modal.Content, { children: [
135
- /* @__PURE__ */ jsx(Modal.Header, { children: /* @__PURE__ */ jsx(Modal.Title, { children: buttonText }) }),
136
- /* @__PURE__ */ jsx(Modal.Body, { children: /* @__PURE__ */ jsx(Typography, { variant: "omega", children: formatMessage(
137
- {
138
- id: "strapi-cache.cache.purge.confirmation",
139
- defaultMessage: "Are you sure you want to purge the cache?"
140
- },
141
- { key: `"${keyToUse}"` }
142
- ) }) }),
143
- /* @__PURE__ */ jsxs(Modal.Footer, { children: [
144
- /* @__PURE__ */ jsx(Modal.Close, { children: /* @__PURE__ */ jsx(Button, { variant: "tertiary", children: formatMessage({
145
- id: "strapi-cache.cache.cancel",
146
- defaultMessage: "No, cancel"
147
- }) }) }),
148
- /* @__PURE__ */ jsx(Modal.Close, { children: /* @__PURE__ */ jsx(PurgeButton, { onClick: clearCache }) })
149
- ] })
150
- ] })
151
- ] });
152
- }
153
- function PurgeCacheButton() {
154
- const { contentType } = unstable_useContentManagerContext();
155
- const { formatMessage } = useIntl();
156
- const keyToUse = contentType?.info.pluralName;
157
- return /* @__PURE__ */ jsx(
158
- PurgeModal,
159
- {
160
- buttonText: formatMessage({
161
- id: "strapi-cache.cache.purge",
162
- defaultMessage: "Purge Cache"
163
- }),
164
- keyToUse
165
- }
166
- );
167
- }
168
- function PurgeEntityButton() {
169
- const { formatMessage } = useIntl();
170
- const { id, isSingleType, contentType } = unstable_useContentManagerContext();
171
- const apiPath = isSingleType ? contentType?.info.singularName : id;
172
- if (!apiPath) {
173
- return null;
174
- }
175
- const keyToUse = encodeURIComponent(apiPath);
176
- const contentTypeName = isSingleType ? contentType?.info.singularName : contentType?.info.pluralName;
177
- return /* @__PURE__ */ jsx(
178
- PurgeModal,
179
- {
180
- buttonWidth: "100%",
181
- buttonText: formatMessage({
182
- id: "strapi-cache.cache.purge.entity",
183
- defaultMessage: "Purge Entity Cache"
184
- }),
185
- keyToUse,
186
- contentTypeName
187
- }
188
- );
189
- }
190
- const index = {
191
- register(app) {
192
- app.registerPlugin({
193
- id: PLUGIN_ID,
194
- initializer: Initializer,
195
- isReady: false,
196
- name: PLUGIN_ID
197
- });
198
- app.getPlugin("content-manager").injectComponent("listView", "actions", {
199
- name: PurgeCacheButton,
200
- Component: PurgeCacheButton
201
- });
202
- app.getPlugin("content-manager").injectComponent("editView", "right-links", {
203
- name: PurgeEntityButton,
204
- Component: PurgeEntityButton
205
- });
206
- },
207
- async registerTrads({ locales }) {
208
- return Promise.all(
209
- locales.map(async (locale) => {
210
- try {
211
- const { default: data } = await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/de.json": () => import("../_chunks/de-OlWEMza0.mjs"), "./translations/en.json": () => import("../_chunks/en-CFA1lEXn.mjs") }), `./translations/${locale}.json`, 3);
212
- return { data, locale };
213
- } catch {
214
- return { data: {}, locale };
215
- }
216
- })
217
- );
218
- }
219
- };
1
+ import { i } from "../_chunks/index-CNdnmVNv.mjs";
220
2
  export {
221
- index as default
3
+ i as default
222
4
  };
223
5
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../admin/src/pluginId.ts","../../admin/src/components/Initializer.tsx","../../admin/src/permission.ts","../../admin/src/components/PurgeModal/PurgeButton/index.tsx","../../admin/src/components/PurgeModal/index.tsx","../../admin/src/components/PurgeCacheButton/index.tsx","../../admin/src/components/PurgeEntityButton/index.tsx","../../admin/src/index.ts"],"sourcesContent":["export const PLUGIN_ID = 'strapi-cache';\n","import { useEffect, useRef } from 'react';\n\nimport { PLUGIN_ID } from '../pluginId';\n\ntype InitializerProps = {\n setPlugin: (id: string) => void;\n};\n\nconst Initializer = ({ setPlugin }: InitializerProps) => {\n const ref = useRef(setPlugin);\n\n useEffect(() => {\n ref.current(PLUGIN_ID);\n }, []);\n\n return null;\n};\n\nexport { Initializer };\n","export const pluginPermissions = {\n purge: [{ action: 'plugin::strapi-cache.purge-cache', subject: null }],\n};\n","import { Button } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nfunction PurgeButton({ onClick }: { onClick: () => void }) {\n const formatMessage = useIntl().formatMessage;\n\n return (\n <Button onClick={onClick}>\n {formatMessage({\n id: 'strapi-cache.cache.confirm',\n defaultMessage: 'Yes, confirm',\n })}\n </Button>\n );\n}\n\nexport default PurgeButton;\n","import { useIntl } from 'react-intl';\nimport { Archive } from '@strapi/icons';\nimport { Button, Modal } from '@strapi/design-system';\nimport { useNotification, useRBAC } from '@strapi/strapi/admin';\nimport { pluginPermissions } from '../../permission';\nimport { Typography } from '@strapi/design-system';\nimport { useFetchClient } from '@strapi/strapi/admin';\nimport { useEffect, useState } from 'react';\nimport PurgeButton from './PurgeButton';\n\ntype Config = {\n cacheableRoutes: string[];\n disableAdminPopups: boolean;\n};\n\nexport type PurgeProps = {\n buttonText: string;\n buttonWidth?: string;\n keyToUse?: string;\n contentTypeName?: string;\n};\n\nfunction PurgeModal({ buttonText, keyToUse, buttonWidth, contentTypeName }: PurgeProps) {\n const { allowedActions } = useRBAC(pluginPermissions);\n const formatMessage = useIntl().formatMessage;\n const { post, get } = useFetchClient();\n const { toggleNotification } = useNotification();\n const [config, setConfig] = useState<Config>();\n\n useEffect(() => {\n if (!allowedActions.canPurgeCache) {\n return;\n }\n const fetchConfig = async () => {\n try {\n const { data } = await get('/strapi-cache/config');\n return data;\n } catch (error: any) {\n // only show error notification if its not a permissions error and popups are not disabled\n const isPermissionError =\n error?.response?.status === 403 || error?.response?.status === 401;\n if (!isPermissionError && !config?.disableAdminPopups) {\n toggleNotification({\n type: 'warning',\n message: formatMessage({\n id: 'strapi-cache.cache.routes.fetch-error',\n defaultMessage: 'Unable to fetch cache config. Cache purge may not work correctly.',\n }),\n });\n }\n return undefined;\n }\n };\n fetchConfig().then((data) => {\n setConfig(data);\n });\n }, [allowedActions.canPurgeCache]);\n\n const isCacheableRoute = () => {\n if (!keyToUse || !config) {\n return false;\n }\n\n const { cacheableRoutes } = config;\n return (\n cacheableRoutes.length === 0 ||\n cacheableRoutes.some((route) => {\n return route.includes(keyToUse) || (contentTypeName && route.includes(contentTypeName));\n })\n );\n };\n\n const clearCache = () => {\n if (!keyToUse && !config?.disableAdminPopups) {\n toggleNotification({\n type: 'warning',\n message: formatMessage({\n id: 'strapi-cache.cache.purge.no-content-type',\n defaultMessage: 'No content type found',\n }),\n });\n return;\n }\n\n post(`/strapi-cache/purge-cache/${keyToUse}`, undefined, {\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n .then(() => {\n if (!config?.disableAdminPopups) {\n toggleNotification({\n type: 'success',\n message: formatMessage(\n {\n id: 'strapi-cache.cache.purge.success',\n defaultMessage: 'Cache purged successfully',\n },\n {\n key: `\"${keyToUse}\"`,\n }\n ),\n });\n }\n })\n .catch(() => {\n if (!config?.disableAdminPopups) {\n toggleNotification({\n type: 'danger',\n message: formatMessage(\n {\n id: 'strapi-cache.cache.purge.error',\n defaultMessage: 'Error purging cache',\n },\n {\n key: `\"${keyToUse}\"`,\n }\n ),\n });\n }\n });\n };\n\n if (!allowedActions.canPurgeCache || !isCacheableRoute()) {\n return null;\n }\n\n return (\n <Modal.Root>\n <Modal.Trigger>\n <Button width={buttonWidth} startIcon={<Archive />} variant=\"danger\">\n {buttonText}\n </Button>\n </Modal.Trigger>\n <Modal.Content>\n <Modal.Header>\n <Modal.Title>{buttonText}</Modal.Title>\n </Modal.Header>\n <Modal.Body>\n <Typography variant=\"omega\">\n {formatMessage(\n {\n id: 'strapi-cache.cache.purge.confirmation',\n defaultMessage: 'Are you sure you want to purge the cache?',\n },\n { key: `\"${keyToUse}\"` }\n )}\n </Typography>\n </Modal.Body>\n <Modal.Footer>\n <Modal.Close>\n <Button variant=\"tertiary\">\n {formatMessage({\n id: 'strapi-cache.cache.cancel',\n defaultMessage: 'No, cancel',\n })}\n </Button>\n </Modal.Close>\n <Modal.Close>\n <PurgeButton onClick={clearCache}></PurgeButton>\n </Modal.Close>\n </Modal.Footer>\n </Modal.Content>\n </Modal.Root>\n );\n}\n\nexport default PurgeModal;\n","import { unstable_useContentManagerContext as useContentManagerContext } from '@strapi/strapi/admin';\nimport PurgeModal from '../PurgeModal';\nimport { useIntl } from 'react-intl';\n\nfunction PurgeCacheButton() {\n const { contentType } = useContentManagerContext();\n const { formatMessage } = useIntl();\n const keyToUse = contentType?.info.pluralName;\n\n return (\n <PurgeModal\n buttonText={formatMessage({\n id: 'strapi-cache.cache.purge',\n defaultMessage: 'Purge Cache',\n })}\n keyToUse={keyToUse}\n ></PurgeModal>\n );\n}\n\nexport default PurgeCacheButton;\n","import { unstable_useContentManagerContext as useContentManagerContext } from '@strapi/strapi/admin';\nimport PurgeModal from '../PurgeModal';\nimport { useIntl } from 'react-intl';\n\nfunction PurgeEntityButton() {\n const { formatMessage } = useIntl();\n const { id, isSingleType, contentType } = useContentManagerContext();\n const apiPath = isSingleType ? contentType?.info.singularName : id;\n\n if (!apiPath) {\n return null;\n }\n\n const keyToUse = encodeURIComponent(apiPath);\n const contentTypeName = isSingleType\n ? contentType?.info.singularName\n : contentType?.info.pluralName;\n\n return (\n <PurgeModal\n buttonWidth=\"100%\"\n buttonText={formatMessage({\n id: 'strapi-cache.cache.purge.entity',\n defaultMessage: 'Purge Entity Cache',\n })}\n keyToUse={keyToUse}\n contentTypeName={contentTypeName}\n ></PurgeModal>\n );\n}\n\nexport default PurgeEntityButton;\n","import { PLUGIN_ID } from './pluginId';\nimport { Initializer } from './components/Initializer';\nimport PurgeCacheButton from './components/PurgeCacheButton';\nimport PurgeEntityButton from './components/PurgeEntityButton';\n\nexport default {\n register(app: any) {\n app.registerPlugin({\n id: PLUGIN_ID,\n initializer: Initializer,\n isReady: false,\n name: PLUGIN_ID,\n });\n\n app.getPlugin('content-manager').injectComponent('listView', 'actions', {\n name: PurgeCacheButton,\n Component: PurgeCacheButton,\n });\n\n app.getPlugin('content-manager').injectComponent('editView', 'right-links', {\n name: PurgeEntityButton,\n Component: PurgeEntityButton,\n });\n },\n\n async registerTrads({ locales }: { locales: string[] }) {\n return Promise.all(\n locales.map(async (locale) => {\n try {\n const { default: data } = await import(`./translations/${locale}.json`);\n\n return { data, locale };\n } catch {\n return { data: {}, locale };\n }\n })\n );\n },\n};\n"],"names":["useContentManagerContext"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,2 @@
1
+ declare const SettingsPage: () => import("react/jsx-runtime").JSX.Element;
2
+ export default SettingsPage;
@@ -0,0 +1,4 @@
1
+ export { useCacheConfig } from './useCacheConfig';
2
+ export { useCachePermissions } from './useCachePermissions';
3
+ export { useCacheOperations } from './useCacheOperations';
4
+ export { useCacheNotifications } from './useCacheNotifications';
@@ -0,0 +1,10 @@
1
+ export type CacheConfig = {
2
+ cacheableRoutes: string[];
3
+ disableAdminPopups: boolean;
4
+ };
5
+ export declare const useCacheConfig: (enabled?: boolean) => {
6
+ config: CacheConfig | undefined;
7
+ isLoading: boolean;
8
+ error: Error | null;
9
+ refetch: () => void;
10
+ };
@@ -0,0 +1,7 @@
1
+ import { CacheConfig } from './useCacheConfig';
2
+ export declare const useCacheNotifications: (config?: CacheConfig) => {
3
+ showConfigFetchError: (error: Error) => void;
4
+ showPurgeSuccess: (key: string) => void;
5
+ showPurgeError: (key: string) => void;
6
+ showNoContentTypeWarning: () => void;
7
+ };
@@ -0,0 +1,10 @@
1
+ import { CacheConfig } from './useCacheConfig';
2
+ export type CacheOperationResult = {
3
+ success: boolean;
4
+ message?: string;
5
+ error?: Error;
6
+ };
7
+ export declare const useCacheOperations: () => {
8
+ isCacheableRoute: (keyToUse?: string, contentTypeName?: string, config?: CacheConfig) => boolean;
9
+ clearCache: (keyToUse?: string) => Promise<CacheOperationResult>;
10
+ };
@@ -0,0 +1,4 @@
1
+ export declare const useCachePermissions: () => {
2
+ canPurgeCache: boolean;
3
+ allowedActions: import("@strapi/strapi/admin").AllowedActions;
4
+ };
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.6.0-rc.1",
2
+ "version": "1.6.0",
3
3
  "keywords": [
4
4
  "strapi cache",
5
5
  "strapi rest cache",
@@ -37,12 +37,13 @@
37
37
  "test": "vitest"
38
38
  },
39
39
  "dependencies": {
40
- "@strapi/design-system": "^2.0.0-rc.23",
41
- "@strapi/icons": "^2.0.0-rc.23",
40
+ "@strapi/design-system": "^2.0.1",
41
+ "@strapi/icons": "^2.0.1",
42
42
  "ioredis": "^5.6.1",
43
43
  "lru-cache": "^11.1.0",
44
44
  "raw-body": "^3.0.0",
45
- "react-intl": "^7.1.10"
45
+ "react-intl": "^7.1.10",
46
+ "strapi-cache": "file:.yalc/strapi-cache"
46
47
  },
47
48
  "devDependencies": {
48
49
  "@strapi/sdk-plugin": "^5.3.2",
@@ -71,10 +72,10 @@
71
72
  "kind": "plugin",
72
73
  "name": "strapi-cache",
73
74
  "displayName": "Strapi Cache",
74
- "description": "A LRU-Cache plugin for strapi v5"
75
+ "description": "An LRU-Cache plugin for strapi v5"
75
76
  },
76
77
  "name": "strapi-cache",
77
- "description": "A LRU-Cache plugin for strapi v5",
78
+ "description": "An LRU-Cache plugin for strapi v5",
78
79
  "license": "MIT",
79
80
  "author": "TupiC <christoph.tupi@gmail.com>",
80
81
  "repository": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"de-Bw-yMVQV.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"de-OlWEMza0.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-3qeM6Pow.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-CFA1lEXn.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -1,4 +0,0 @@
1
- declare function PurgeButton({ onClick }: {
2
- onClick: () => void;
3
- }): import("react/jsx-runtime").JSX.Element;
4
- export default PurgeButton;