@strapi/plugin-users-permissions 0.0.0-next.d62456ea471e44d21b938f21f0e91a567cdc6483 → 0.0.0-next.d65d44102fd32871728c0d74ec4f2519b7cc0a16

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 (197) hide show
  1. package/.eslintignore +1 -2
  2. package/.eslintrc +17 -0
  3. package/LICENSE +18 -3
  4. package/admin/src/components/BoundRoute/{index.js → index.jsx} +2 -2
  5. package/admin/src/components/FormModal/Input/{index.js → index.jsx} +32 -31
  6. package/admin/src/components/FormModal/index.jsx +115 -0
  7. package/admin/src/components/Permissions/PermissionRow/{CheckboxWrapper.js → CheckboxWrapper.jsx} +4 -3
  8. package/admin/src/components/Permissions/PermissionRow/{SubCategory.js → SubCategory.jsx} +13 -22
  9. package/admin/src/components/Permissions/index.jsx +47 -0
  10. package/admin/src/components/Permissions/reducer.js +1 -1
  11. package/admin/src/components/Policies/{index.js → index.jsx} +7 -5
  12. package/admin/src/components/UsersPermissions/{index.js → index.jsx} +15 -7
  13. package/admin/src/components/UsersPermissions/reducer.js +1 -1
  14. package/admin/src/index.js +16 -43
  15. package/admin/src/pages/AdvancedSettings/index.jsx +214 -0
  16. package/admin/src/pages/AdvancedSettings/utils/layout.js +20 -35
  17. package/admin/src/pages/AdvancedSettings/utils/schema.js +5 -2
  18. package/admin/src/pages/EmailTemplates/components/EmailForm.jsx +156 -0
  19. package/admin/src/pages/EmailTemplates/components/{EmailTable.js → EmailTable.jsx} +20 -17
  20. package/admin/src/pages/EmailTemplates/{index.js → index.jsx} +36 -62
  21. package/admin/src/pages/EmailTemplates/utils/schema.js +18 -6
  22. package/admin/src/pages/Providers/{index.js → index.jsx} +98 -113
  23. package/admin/src/pages/Providers/utils/forms.js +23 -11
  24. package/admin/src/pages/Roles/constants.js +3 -3
  25. package/admin/src/pages/Roles/hooks/usePlugins.js +4 -4
  26. package/admin/src/pages/Roles/index.jsx +24 -0
  27. package/admin/src/pages/Roles/pages/{CreatePage.js → CreatePage.jsx} +53 -58
  28. package/admin/src/pages/Roles/pages/{EditPage.js → EditPage.jsx} +63 -68
  29. package/admin/src/pages/Roles/pages/ListPage/components/{TableBody.js → TableBody.jsx} +27 -31
  30. package/admin/src/pages/Roles/pages/ListPage/{index.js → index.jsx} +79 -55
  31. package/admin/src/translations/en.json +1 -1
  32. package/admin/src/utils/prefixPluginTranslations.js +13 -0
  33. package/dist/_chunks/ar-BguGUqwK.js +44 -0
  34. package/dist/_chunks/ar-BguGUqwK.js.map +1 -0
  35. package/dist/_chunks/ar-CK8BRRXB.mjs +44 -0
  36. package/dist/_chunks/ar-CK8BRRXB.mjs.map +1 -0
  37. package/dist/_chunks/cs-BVigMk0l.mjs +50 -0
  38. package/dist/_chunks/cs-BVigMk0l.mjs.map +1 -0
  39. package/dist/_chunks/cs-BW8-K_GY.js +50 -0
  40. package/dist/_chunks/cs-BW8-K_GY.js.map +1 -0
  41. package/dist/_chunks/de-BKUdRFI4.mjs +62 -0
  42. package/dist/_chunks/de-BKUdRFI4.mjs.map +1 -0
  43. package/dist/_chunks/de-owXpVluI.js +62 -0
  44. package/dist/_chunks/de-owXpVluI.js.map +1 -0
  45. package/dist/_chunks/dk-BQiTK50l.mjs +86 -0
  46. package/dist/_chunks/dk-BQiTK50l.mjs.map +1 -0
  47. package/dist/_chunks/dk-LXAnbuBk.js +86 -0
  48. package/dist/_chunks/dk-LXAnbuBk.js.map +1 -0
  49. package/dist/_chunks/en-DOHtPf-2.mjs +86 -0
  50. package/dist/_chunks/en-DOHtPf-2.mjs.map +1 -0
  51. package/dist/_chunks/en-MHo5mcsU.js +86 -0
  52. package/dist/_chunks/en-MHo5mcsU.js.map +1 -0
  53. package/dist/_chunks/es-BwLCLXAQ.js +86 -0
  54. package/dist/_chunks/es-BwLCLXAQ.js.map +1 -0
  55. package/dist/_chunks/es-DNgOVMjD.mjs +86 -0
  56. package/dist/_chunks/es-DNgOVMjD.mjs.map +1 -0
  57. package/dist/_chunks/fr-DkgRugiU.mjs +50 -0
  58. package/dist/_chunks/fr-DkgRugiU.mjs.map +1 -0
  59. package/dist/_chunks/fr-DkhpSjjm.js +50 -0
  60. package/dist/_chunks/fr-DkhpSjjm.js.map +1 -0
  61. package/dist/_chunks/id-BTemOeTZ.js +62 -0
  62. package/dist/_chunks/id-BTemOeTZ.js.map +1 -0
  63. package/dist/_chunks/id-BdEsvnaF.mjs +62 -0
  64. package/dist/_chunks/id-BdEsvnaF.mjs.map +1 -0
  65. package/dist/_chunks/index-B9NORM1w.mjs +262 -0
  66. package/dist/_chunks/index-B9NORM1w.mjs.map +1 -0
  67. package/dist/_chunks/index-BNdbpSSg.js +640 -0
  68. package/dist/_chunks/index-BNdbpSSg.js.map +1 -0
  69. package/dist/_chunks/index-BvK5n167.js +247 -0
  70. package/dist/_chunks/index-BvK5n167.js.map +1 -0
  71. package/dist/_chunks/index-C3KHvX_6-BeiPUoDw.mjs +12005 -0
  72. package/dist/_chunks/index-C3KHvX_6-BeiPUoDw.mjs.map +1 -0
  73. package/dist/_chunks/index-C3KHvX_6-BwTVUy-u.js +12029 -0
  74. package/dist/_chunks/index-C3KHvX_6-BwTVUy-u.js.map +1 -0
  75. package/dist/_chunks/index-C9Ijj7mM.mjs +617 -0
  76. package/dist/_chunks/index-C9Ijj7mM.mjs.map +1 -0
  77. package/dist/_chunks/index-CggFIuma.mjs +1142 -0
  78. package/dist/_chunks/index-CggFIuma.mjs.map +1 -0
  79. package/dist/_chunks/index-DLcgNarh.mjs +344 -0
  80. package/dist/_chunks/index-DLcgNarh.mjs.map +1 -0
  81. package/dist/_chunks/index-DSk4GOjB.js +366 -0
  82. package/dist/_chunks/index-DSk4GOjB.js.map +1 -0
  83. package/dist/_chunks/index-DlpFemyb.js +1172 -0
  84. package/dist/_chunks/index-DlpFemyb.js.map +1 -0
  85. package/dist/_chunks/index-Dn-wIkGB.mjs +248 -0
  86. package/dist/_chunks/index-Dn-wIkGB.mjs.map +1 -0
  87. package/dist/_chunks/index-Dq8YsB8g.js +281 -0
  88. package/dist/_chunks/index-Dq8YsB8g.js.map +1 -0
  89. package/dist/_chunks/it-B-rv0E24.mjs +62 -0
  90. package/dist/_chunks/it-B-rv0E24.mjs.map +1 -0
  91. package/dist/_chunks/it-D1rH6V6_.js +62 -0
  92. package/dist/_chunks/it-D1rH6V6_.js.map +1 -0
  93. package/dist/_chunks/ja-C8K-VBPD.mjs +48 -0
  94. package/dist/_chunks/ja-C8K-VBPD.mjs.map +1 -0
  95. package/dist/_chunks/ja-DqShgTMf.js +48 -0
  96. package/dist/_chunks/ja-DqShgTMf.js.map +1 -0
  97. package/dist/_chunks/ko-B9DGEPWH.js +86 -0
  98. package/dist/_chunks/ko-B9DGEPWH.js.map +1 -0
  99. package/dist/_chunks/ko-Busb0wIY.mjs +86 -0
  100. package/dist/_chunks/ko-Busb0wIY.mjs.map +1 -0
  101. package/dist/_chunks/ms-ByvsQjRt.mjs +49 -0
  102. package/dist/_chunks/ms-ByvsQjRt.mjs.map +1 -0
  103. package/dist/_chunks/ms-CPBU3LWf.js +49 -0
  104. package/dist/_chunks/ms-CPBU3LWf.js.map +1 -0
  105. package/dist/_chunks/nl-5qO8Rpcy.mjs +48 -0
  106. package/dist/_chunks/nl-5qO8Rpcy.mjs.map +1 -0
  107. package/dist/_chunks/nl-CwNB6YoO.js +48 -0
  108. package/dist/_chunks/nl-CwNB6YoO.js.map +1 -0
  109. package/dist/_chunks/pl-BdIzifBE.mjs +86 -0
  110. package/dist/_chunks/pl-BdIzifBE.mjs.map +1 -0
  111. package/dist/_chunks/pl-Do9UD69f.js +86 -0
  112. package/dist/_chunks/pl-Do9UD69f.js.map +1 -0
  113. package/dist/_chunks/pt-BIO24ioG.mjs +48 -0
  114. package/dist/_chunks/pt-BIO24ioG.mjs.map +1 -0
  115. package/dist/_chunks/pt-BR-D7dZhxuP.js +44 -0
  116. package/dist/_chunks/pt-BR-D7dZhxuP.js.map +1 -0
  117. package/dist/_chunks/pt-BR-f0p23AQZ.mjs +44 -0
  118. package/dist/_chunks/pt-BR-f0p23AQZ.mjs.map +1 -0
  119. package/dist/_chunks/pt-fdvyOnUp.js +48 -0
  120. package/dist/_chunks/pt-fdvyOnUp.js.map +1 -0
  121. package/dist/_chunks/ru-C94rjPGA.js +86 -0
  122. package/dist/_chunks/ru-C94rjPGA.js.map +1 -0
  123. package/dist/_chunks/ru-VWy-IB7K.mjs +86 -0
  124. package/dist/_chunks/ru-VWy-IB7K.mjs.map +1 -0
  125. package/dist/_chunks/sk-BABEhykl.js +50 -0
  126. package/dist/_chunks/sk-BABEhykl.js.map +1 -0
  127. package/dist/_chunks/sk-B_LIcepm.mjs +50 -0
  128. package/dist/_chunks/sk-B_LIcepm.mjs.map +1 -0
  129. package/dist/_chunks/sv-ABLKOokl.mjs +86 -0
  130. package/dist/_chunks/sv-ABLKOokl.mjs.map +1 -0
  131. package/dist/_chunks/sv-Be43LhA9.js +86 -0
  132. package/dist/_chunks/sv-Be43LhA9.js.map +1 -0
  133. package/dist/_chunks/th-DKyP7ueR.mjs +60 -0
  134. package/dist/_chunks/th-DKyP7ueR.mjs.map +1 -0
  135. package/dist/_chunks/th-DgVhVLhL.js +60 -0
  136. package/dist/_chunks/th-DgVhVLhL.js.map +1 -0
  137. package/dist/_chunks/tr-B_idhkEs.js +85 -0
  138. package/dist/_chunks/tr-B_idhkEs.js.map +1 -0
  139. package/dist/_chunks/tr-qa1Q5UjC.mjs +85 -0
  140. package/dist/_chunks/tr-qa1Q5UjC.mjs.map +1 -0
  141. package/dist/_chunks/uk-BmRqbeQc.mjs +49 -0
  142. package/dist/_chunks/uk-BmRqbeQc.mjs.map +1 -0
  143. package/dist/_chunks/uk-LHOivnhP.js +49 -0
  144. package/dist/_chunks/uk-LHOivnhP.js.map +1 -0
  145. package/dist/_chunks/vi-CdVRdKDw.js +50 -0
  146. package/dist/_chunks/vi-CdVRdKDw.js.map +1 -0
  147. package/dist/_chunks/vi-HW-EdMea.mjs +50 -0
  148. package/dist/_chunks/vi-HW-EdMea.mjs.map +1 -0
  149. package/dist/_chunks/zh-5hKkVPA4.mjs +86 -0
  150. package/dist/_chunks/zh-5hKkVPA4.mjs.map +1 -0
  151. package/dist/_chunks/zh-Cuq8gMnF.js +86 -0
  152. package/dist/_chunks/zh-Cuq8gMnF.js.map +1 -0
  153. package/dist/_chunks/zh-Hans-BHilK-yc.mjs +86 -0
  154. package/dist/_chunks/zh-Hans-BHilK-yc.mjs.map +1 -0
  155. package/dist/_chunks/zh-Hans-GQDMKtY4.js +86 -0
  156. package/dist/_chunks/zh-Hans-GQDMKtY4.js.map +1 -0
  157. package/dist/admin/index.js +4 -0
  158. package/dist/admin/index.js.map +1 -0
  159. package/dist/admin/index.mjs +5 -0
  160. package/dist/admin/index.mjs.map +1 -0
  161. package/package.json +45 -26
  162. package/packup.config.ts +22 -0
  163. package/server/bootstrap/index.js +18 -51
  164. package/server/bootstrap/users-permissions-actions.js +6 -0
  165. package/server/config.js +29 -0
  166. package/server/content-types/user/index.js +0 -1
  167. package/server/controllers/auth.js +62 -63
  168. package/server/controllers/content-manager-user.js +28 -30
  169. package/server/controllers/role.js +17 -4
  170. package/server/controllers/user.js +8 -9
  171. package/server/controllers/validation/auth.js +81 -25
  172. package/server/graphql/types/index.js +1 -0
  173. package/server/graphql/types/user-input.js +20 -0
  174. package/server/middlewares/rateLimit.js +1 -1
  175. package/server/register.js +1 -1
  176. package/server/services/jwt.js +3 -3
  177. package/server/services/permission.js +3 -7
  178. package/server/services/providers-registry.js +469 -261
  179. package/server/services/providers.js +10 -5
  180. package/server/services/role.js +15 -13
  181. package/server/services/user.js +56 -19
  182. package/server/services/users-permissions.js +15 -13
  183. package/server/utils/index.d.ts +2 -1
  184. package/server/utils/sanitize/sanitizers.js +7 -3
  185. package/server/utils/sanitize/visitors/remove-user-relation-from-role-entities.js +2 -2
  186. package/.eslintrc.js +0 -14
  187. package/admin/src/components/FormModal/index.js +0 -126
  188. package/admin/src/components/Permissions/index.js +0 -55
  189. package/admin/src/pages/AdvancedSettings/index.js +0 -259
  190. package/admin/src/pages/EmailTemplates/components/EmailForm.js +0 -176
  191. package/admin/src/pages/Roles/index.js +0 -33
  192. package/admin/src/pages/Roles/pages/ListPage/utils/api.js +0 -30
  193. package/server/bootstrap/grant-config.js +0 -131
  194. package/strapi-admin.js +0 -3
  195. package/strapi-server.js +0 -3
  196. /package/admin/src/components/Permissions/PermissionRow/{index.js → index.jsx} +0 -0
  197. /package/admin/src/contexts/UsersPermissionsContext/{index.js → index.jsx} +0 -0
@@ -11,28 +11,27 @@ const utils = require('@strapi/utils');
11
11
  const { getService } = require('../utils');
12
12
  const { validateCreateUserBody, validateUpdateUserBody } = require('./validation/user');
13
13
 
14
- const { sanitize, validate } = utils;
15
14
  const { ApplicationError, ValidationError, NotFoundError } = utils.errors;
16
15
 
17
16
  const sanitizeOutput = async (user, ctx) => {
18
17
  const schema = strapi.getModel('plugin::users-permissions.user');
19
18
  const { auth } = ctx.state;
20
19
 
21
- return sanitize.contentAPI.output(user, schema, { auth });
20
+ return strapi.contentAPI.sanitize.output(user, schema, { auth });
22
21
  };
23
22
 
24
23
  const validateQuery = async (query, ctx) => {
25
24
  const schema = strapi.getModel('plugin::users-permissions.user');
26
25
  const { auth } = ctx.state;
27
26
 
28
- return validate.contentAPI.query(query, schema, { auth });
27
+ return strapi.contentAPI.validate.query(query, schema, { auth });
29
28
  };
30
29
 
31
30
  const sanitizeQuery = async (query, ctx) => {
32
31
  const schema = strapi.getModel('plugin::users-permissions.user');
33
32
  const { auth } = ctx.state;
34
33
 
35
- return sanitize.contentAPI.query(query, schema, { auth });
34
+ return strapi.contentAPI.sanitize.query(query, schema, { auth });
36
35
  };
37
36
 
38
37
  module.exports = {
@@ -49,7 +48,7 @@ module.exports = {
49
48
 
50
49
  const { email, username, role } = ctx.request.body;
51
50
 
52
- const userWithSameUsername = await strapi
51
+ const userWithSameUsername = await strapi.db
53
52
  .query('plugin::users-permissions.user')
54
53
  .findOne({ where: { username } });
55
54
 
@@ -58,7 +57,7 @@ module.exports = {
58
57
  }
59
58
 
60
59
  if (advanced.unique_email) {
61
- const userWithSameEmail = await strapi
60
+ const userWithSameEmail = await strapi.db
62
61
  .query('plugin::users-permissions.user')
63
62
  .findOne({ where: { email: email.toLowerCase() } });
64
63
 
@@ -74,7 +73,7 @@ module.exports = {
74
73
  };
75
74
 
76
75
  if (!role) {
77
- const defaultRole = await strapi
76
+ const defaultRole = await strapi.db
78
77
  .query('plugin::users-permissions.role')
79
78
  .findOne({ where: { type: advanced.default_role } });
80
79
 
@@ -115,7 +114,7 @@ module.exports = {
115
114
  }
116
115
 
117
116
  if (_.has(ctx.request.body, 'username')) {
118
- const userWithSameUsername = await strapi
117
+ const userWithSameUsername = await strapi.db
119
118
  .query('plugin::users-permissions.user')
120
119
  .findOne({ where: { username } });
121
120
 
@@ -125,7 +124,7 @@ module.exports = {
125
124
  }
126
125
 
127
126
  if (_.has(ctx.request.body, 'email') && advancedConfigs.unique_email) {
128
- const userWithSameEmail = await strapi
127
+ const userWithSameEmail = await strapi.db
129
128
  .query('plugin::users-permissions.user')
130
129
  .findOne({ where: { email: email.toLowerCase() } });
131
130
 
@@ -7,11 +7,27 @@ const callbackSchema = yup.object({
7
7
  password: yup.string().required(),
8
8
  });
9
9
 
10
- const registerSchema = yup.object({
11
- email: yup.string().email().required(),
12
- username: yup.string().required(),
13
- password: yup.string().required(),
14
- });
10
+ const createRegisterSchema = (config) =>
11
+ yup.object({
12
+ email: yup.string().email().required(),
13
+ username: yup.string().required(),
14
+ password: yup
15
+ .string()
16
+ .required()
17
+ .test(async function (value) {
18
+ if (typeof config?.validatePassword === 'function') {
19
+ try {
20
+ const isValid = await config.validatePassword(value);
21
+ if (!isValid) {
22
+ return this.createError({ message: 'Password validation failed.' });
23
+ }
24
+ } catch (error) {
25
+ return this.createError({ message: error.message || 'An error occurred.' });
26
+ }
27
+ }
28
+ return true;
29
+ }),
30
+ });
15
31
 
16
32
  const sendEmailConfirmationSchema = yup.object({
17
33
  email: yup.string().email().required(),
@@ -27,31 +43,71 @@ const forgotPasswordSchema = yup
27
43
  })
28
44
  .noUnknown();
29
45
 
30
- const resetPasswordSchema = yup
31
- .object({
32
- password: yup.string().required(),
33
- passwordConfirmation: yup.string().required(),
34
- code: yup.string().required(),
35
- })
36
- .noUnknown();
46
+ const createResetPasswordSchema = (config) =>
47
+ yup
48
+ .object({
49
+ password: yup
50
+ .string()
51
+ .required()
52
+ .test(async function (value) {
53
+ if (typeof config?.validatePassword === 'function') {
54
+ try {
55
+ const isValid = await config.validatePassword(value);
56
+ if (!isValid) {
57
+ return this.createError({ message: 'Password validation failed.' });
58
+ }
59
+ } catch (error) {
60
+ return this.createError({ message: error.message || 'An error occurred.' });
61
+ }
62
+ }
63
+ return true;
64
+ }),
37
65
 
38
- const changePasswordSchema = yup
39
- .object({
40
- password: yup.string().required(),
41
- passwordConfirmation: yup
42
- .string()
43
- .required()
44
- .oneOf([yup.ref('password')], 'Passwords do not match'),
45
- currentPassword: yup.string().required(),
46
- })
47
- .noUnknown();
66
+ passwordConfirmation: yup
67
+ .string()
68
+ .required()
69
+ .oneOf([yup.ref('password')], 'Passwords do not match'),
70
+
71
+ code: yup.string().required(),
72
+ })
73
+ .noUnknown();
74
+
75
+ const createChangePasswordSchema = (config) =>
76
+ yup
77
+ .object({
78
+ password: yup
79
+ .string()
80
+ .required()
81
+ .test(async function (value) {
82
+ if (typeof config?.validatePassword === 'function') {
83
+ try {
84
+ const isValid = await config.validatePassword(value);
85
+ if (!isValid) {
86
+ return this.createError({ message: 'Password validation failed.' });
87
+ }
88
+ } catch (error) {
89
+ return this.createError({ message: error.message || 'An error occurred.' });
90
+ }
91
+ }
92
+ return true;
93
+ }),
94
+ passwordConfirmation: yup
95
+ .string()
96
+ .required()
97
+ .oneOf([yup.ref('password')], 'Passwords do not match'),
98
+ currentPassword: yup.string().required(),
99
+ })
100
+ .noUnknown();
48
101
 
49
102
  module.exports = {
50
103
  validateCallbackBody: validateYupSchema(callbackSchema),
51
- validateRegisterBody: validateYupSchema(registerSchema),
104
+ validateRegisterBody: (payload, config) =>
105
+ validateYupSchema(createRegisterSchema(config))(payload),
52
106
  validateSendEmailConfirmationBody: validateYupSchema(sendEmailConfirmationSchema),
53
107
  validateEmailConfirmationBody: validateYupSchema(validateEmailConfirmationSchema),
54
108
  validateForgotPasswordBody: validateYupSchema(forgotPasswordSchema),
55
- validateResetPasswordBody: validateYupSchema(resetPasswordSchema),
56
- validateChangePasswordBody: validateYupSchema(changePasswordSchema),
109
+ validateResetPasswordBody: (payload, config) =>
110
+ validateYupSchema(createResetPasswordSchema(config))(payload),
111
+ validateChangePasswordBody: (payload, config) =>
112
+ validateYupSchema(createChangePasswordSchema(config))(payload),
57
113
  };
@@ -10,6 +10,7 @@ const typesFactories = [
10
10
  require('./create-role-payload'),
11
11
  require('./update-role-payload'),
12
12
  require('./delete-role-payload'),
13
+ require('./user-input'),
13
14
  ];
14
15
 
15
16
  /**
@@ -0,0 +1,20 @@
1
+ 'use strict';
2
+
3
+ const usersPermissionsUserUID = 'plugin::users-permissions.user';
4
+
5
+ module.exports = ({ nexus, strapi }) => {
6
+ const { getContentTypeInputName } = strapi.plugin('graphql').service('utils').naming;
7
+
8
+ const userContentType = strapi.getModel(usersPermissionsUserUID);
9
+ const userInputName = getContentTypeInputName(userContentType);
10
+
11
+ return nexus.extendInputType({
12
+ type: userInputName,
13
+
14
+ definition(t) {
15
+ // Manually add the private password field back to the data
16
+ // input type as it is used for CRUD operations on users
17
+ t.string('password');
18
+ },
19
+ });
20
+ };
@@ -9,7 +9,7 @@ const { RateLimitError } = utils.errors;
9
9
  module.exports =
10
10
  (config, { strapi }) =>
11
11
  async (ctx, next) => {
12
- let rateLimitConfig = strapi.config.get('plugin.users-permissions.ratelimit');
12
+ let rateLimitConfig = strapi.config.get('plugin::users-permissions.ratelimit');
13
13
 
14
14
  if (!rateLimitConfig) {
15
15
  rateLimitConfig = {
@@ -7,7 +7,7 @@ const authStrategy = require('./strategies/users-permissions');
7
7
  const sanitizers = require('./utils/sanitize/sanitizers');
8
8
 
9
9
  module.exports = ({ strapi }) => {
10
- strapi.container.get('auth').register('content-api', authStrategy);
10
+ strapi.get('auth').register('content-api', authStrategy);
11
11
  strapi.sanitizers.add('content-api.output', sanitizers.defaultSanitizeOutput);
12
12
 
13
13
  if (strapi.plugin('graphql')) {
@@ -29,10 +29,10 @@ module.exports = ({ strapi }) => ({
29
29
  },
30
30
 
31
31
  issue(payload, jwtOptions = {}) {
32
- _.defaults(jwtOptions, strapi.config.get('plugin.users-permissions.jwt'));
32
+ _.defaults(jwtOptions, strapi.config.get('plugin::users-permissions.jwt'));
33
33
  return jwt.sign(
34
34
  _.clone(payload.toJSON ? payload.toJSON() : payload),
35
- strapi.config.get('plugin.users-permissions.jwtSecret'),
35
+ strapi.config.get('plugin::users-permissions.jwtSecret'),
36
36
  jwtOptions
37
37
  );
38
38
  },
@@ -41,7 +41,7 @@ module.exports = ({ strapi }) => ({
41
41
  return new Promise((resolve, reject) => {
42
42
  jwt.verify(
43
43
  token,
44
- strapi.config.get('plugin.users-permissions.jwtSecret'),
44
+ strapi.config.get('plugin::users-permissions.jwtSecret'),
45
45
  {},
46
46
  (err, tokenPayload = {}) => {
47
47
  if (err) {
@@ -11,11 +11,7 @@ module.exports = ({ strapi }) => ({
11
11
  * @return {object[]}
12
12
  */
13
13
  async findRolePermissions(roleID) {
14
- return strapi.entityService.load(
15
- 'plugin::users-permissions.role',
16
- { id: roleID },
17
- 'permissions'
18
- );
14
+ return strapi.db.query('plugin::users-permissions.role').load({ id: roleID }, 'permissions');
19
15
  },
20
16
 
21
17
  /**
@@ -24,8 +20,8 @@ module.exports = ({ strapi }) => ({
24
20
  * @return {object[]}
25
21
  */
26
22
  async findPublicPermissions() {
27
- return strapi.entityService.findMany('plugin::users-permissions.permission', {
28
- filters: PUBLIC_ROLE_FILTER,
23
+ return strapi.db.query('plugin::users-permissions.permission').findMany({
24
+ where: PUBLIC_ROLE_FILTER,
29
25
  });
30
26
  },
31
27