@strapi/admin 5.51.0 → 5.51.1

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 (82) hide show
  1. package/dist/admin/admin/tests/server.js +23 -1
  2. package/dist/admin/admin/tests/server.js.map +1 -1
  3. package/dist/admin/admin/tests/server.mjs +23 -1
  4. package/dist/admin/admin/tests/server.mjs.map +1 -1
  5. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.js +38 -7
  6. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.js.map +1 -1
  7. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.mjs +18 -7
  8. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.mjs.map +1 -1
  9. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.js +4 -1
  10. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.js.map +1 -1
  11. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.mjs +4 -1
  12. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.mjs.map +1 -1
  13. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.js +17 -6
  14. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.js.map +1 -1
  15. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.mjs +18 -7
  16. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.mjs.map +1 -1
  17. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.js +23 -26
  18. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.js.map +1 -1
  19. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.mjs +23 -26
  20. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.mjs.map +1 -1
  21. package/dist/admin/ee/admin/src/services/auditLogs.js +10 -1
  22. package/dist/admin/ee/admin/src/services/auditLogs.js.map +1 -1
  23. package/dist/admin/ee/admin/src/services/auditLogs.mjs +10 -2
  24. package/dist/admin/ee/admin/src/services/auditLogs.mjs.map +1 -1
  25. package/dist/admin/shared/utils/auth-cookie-domain.js +1 -0
  26. package/dist/admin/shared/utils/auth-cookie-domain.js.map +1 -1
  27. package/dist/admin/shared/utils/auth-cookie-domain.mjs +1 -0
  28. package/dist/admin/shared/utils/auth-cookie-domain.mjs.map +1 -1
  29. package/dist/admin/shared/utils/auth-cookie-path.js +1 -0
  30. package/dist/admin/shared/utils/auth-cookie-path.js.map +1 -1
  31. package/dist/admin/shared/utils/auth-cookie-path.mjs +1 -0
  32. package/dist/admin/shared/utils/auth-cookie-path.mjs.map +1 -1
  33. package/dist/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.d.ts +6 -1
  34. package/dist/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.d.ts +5 -3
  35. package/dist/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.d.ts +8 -4
  36. package/dist/ee/admin/src/services/auditLogs.d.ts +5 -2
  37. package/dist/ee/server/src/audit-logs/controllers/audit-logs.d.ts +1 -0
  38. package/dist/ee/server/src/audit-logs/controllers/audit-logs.d.ts.map +1 -1
  39. package/dist/ee/server/src/audit-logs/routes/audit-logs.d.ts.map +1 -1
  40. package/dist/ee/server/src/audit-logs/services/audit-logs.d.ts +16 -0
  41. package/dist/ee/server/src/audit-logs/services/audit-logs.d.ts.map +1 -1
  42. package/dist/ee/server/src/audit-logs/validation/audit-logs.d.ts +2 -0
  43. package/dist/ee/server/src/audit-logs/validation/audit-logs.d.ts.map +1 -1
  44. package/dist/ee/server/src/index.d.ts +1 -0
  45. package/dist/ee/server/src/index.d.ts.map +1 -1
  46. package/dist/server/ee/server/src/audit-logs/controllers/audit-logs.js +10 -0
  47. package/dist/server/ee/server/src/audit-logs/controllers/audit-logs.js.map +1 -1
  48. package/dist/server/ee/server/src/audit-logs/controllers/audit-logs.mjs +11 -1
  49. package/dist/server/ee/server/src/audit-logs/controllers/audit-logs.mjs.map +1 -1
  50. package/dist/server/ee/server/src/audit-logs/routes/audit-logs.js +24 -32
  51. package/dist/server/ee/server/src/audit-logs/routes/audit-logs.js.map +1 -1
  52. package/dist/server/ee/server/src/audit-logs/routes/audit-logs.mjs +24 -32
  53. package/dist/server/ee/server/src/audit-logs/routes/audit-logs.mjs.map +1 -1
  54. package/dist/server/ee/server/src/audit-logs/services/audit-logs.js +33 -1
  55. package/dist/server/ee/server/src/audit-logs/services/audit-logs.js.map +1 -1
  56. package/dist/server/ee/server/src/audit-logs/services/audit-logs.mjs +33 -1
  57. package/dist/server/ee/server/src/audit-logs/services/audit-logs.mjs.map +1 -1
  58. package/dist/server/ee/server/src/audit-logs/validation/audit-logs.js +8 -0
  59. package/dist/server/ee/server/src/audit-logs/validation/audit-logs.js.map +1 -1
  60. package/dist/server/ee/server/src/audit-logs/validation/audit-logs.mjs +8 -1
  61. package/dist/server/ee/server/src/audit-logs/validation/audit-logs.mjs.map +1 -1
  62. package/dist/server/shared/utils/auth-cookie-domain.js +1 -0
  63. package/dist/server/shared/utils/auth-cookie-domain.js.map +1 -1
  64. package/dist/server/shared/utils/auth-cookie-domain.mjs +1 -0
  65. package/dist/server/shared/utils/auth-cookie-domain.mjs.map +1 -1
  66. package/dist/server/shared/utils/auth-cookie-path.js +1 -0
  67. package/dist/server/shared/utils/auth-cookie-path.js.map +1 -1
  68. package/dist/server/shared/utils/auth-cookie-path.mjs +1 -0
  69. package/dist/server/shared/utils/auth-cookie-path.mjs.map +1 -1
  70. package/dist/shared/contracts/api-token.d.ts +2 -2
  71. package/dist/shared/contracts/api-token.d.ts.map +1 -1
  72. package/dist/shared/contracts/audit-logs.d.ts +19 -1
  73. package/dist/shared/contracts/audit-logs.d.ts.map +1 -1
  74. package/dist/shared/contracts/authentication.d.ts +1 -1
  75. package/dist/shared/contracts/authentication.d.ts.map +1 -1
  76. package/dist/shared/contracts/homepage.d.ts +2 -2
  77. package/dist/shared/contracts/homepage.d.ts.map +1 -1
  78. package/dist/shared/contracts/user.d.ts +1 -1
  79. package/dist/shared/contracts/user.d.ts.map +1 -1
  80. package/dist/shared/utils/auth-cookie-domain.d.ts.map +1 -1
  81. package/dist/shared/utils/auth-cookie-path.d.ts.map +1 -1
  82. package/package.json +9 -9
@@ -31,7 +31,7 @@ const getSanitizedUser = (user)=>{
31
31
  return this;
32
32
  },
33
33
  async findMany (query) {
34
- const { results, pagination } = await strapi.db?.query('admin::audit-log').findPage({
34
+ const { results, pagination } = await strapi.db.query('admin::audit-log').findPage({
35
35
  populate: [
36
36
  'user'
37
37
  ],
@@ -54,6 +54,38 @@ const getSanitizedUser = (user)=>{
54
54
  pagination
55
55
  };
56
56
  },
57
+ async findManyUsers (query) {
58
+ const { page = 1, pageSize = 10 } = query;
59
+ const userAttribute = strapi.db.metadata.get('admin::audit-log').attributes.user;
60
+ if (userAttribute?.type !== 'relation' || !('joinTable' in userAttribute) || !userAttribute.joinTable || !('inverseJoinColumn' in userAttribute.joinTable)) {
61
+ throw new Error('The audit log user relation is expected to use a join table');
62
+ }
63
+ const { joinTable } = userAttribute;
64
+ const authorIds = await strapi.db.connection(joinTable.name).distinct(joinTable.inverseJoinColumn.name).pluck(joinTable.inverseJoinColumn.name);
65
+ const { results, pagination } = await strapi.db.query('admin::user').findPage({
66
+ select: [
67
+ 'id',
68
+ 'email',
69
+ 'username',
70
+ 'firstname',
71
+ 'lastname'
72
+ ],
73
+ where: {
74
+ id: {
75
+ $in: authorIds
76
+ }
77
+ },
78
+ orderBy: {
79
+ id: 'asc'
80
+ },
81
+ page: Number(page),
82
+ pageSize: Number(pageSize)
83
+ });
84
+ return {
85
+ results: results.map(getSanitizedUser),
86
+ pagination
87
+ };
88
+ },
57
89
  async findOne (id) {
58
90
  const result = await strapi.db?.query('admin::audit-log').findOne({
59
91
  where: {
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logs.js","sources":["../../../../../../../ee/server/src/audit-logs/services/audit-logs.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\ninterface Event {\n action: string;\n date: Date;\n userId: string | number;\n payload: Record<string, unknown>;\n}\n\ninterface Log extends Omit<Event, 'userId'> {\n user: string | number;\n}\n\nconst getSanitizedUser = (user: any) => {\n let displayName = user.email;\n\n if (user.username) {\n displayName = user.username;\n } else if (user.firstname && user.lastname) {\n displayName = `${user.firstname} ${user.lastname}`;\n }\n\n return {\n id: user.id,\n email: user.email,\n displayName,\n };\n};\n\n/**\n * @description\n * Manages audit logs interaction with the database. Accessible via strapi.get('audit-logs')\n */\nconst createAuditLogsService = (strapi: Core.Strapi) => {\n return {\n async saveEvent(event: Event) {\n const { userId, ...rest } = event;\n\n const auditLog: Log = { ...rest, user: userId };\n\n // Save to database\n await strapi.db?.query('admin::audit-log').create({ data: auditLog });\n\n return this;\n },\n\n async findMany(query: unknown) {\n const { results, pagination } = await strapi.db?.query('admin::audit-log').findPage({\n populate: ['user'],\n select: ['action', 'date', 'payload'],\n ...strapi.get('query-params').transform('admin::audit-log', query),\n });\n\n const sanitizedResults = results.map((result: any) => {\n const { user, ...rest } = result;\n return {\n ...rest,\n user: user ? getSanitizedUser(user) : null,\n };\n });\n\n return {\n results: sanitizedResults,\n pagination,\n };\n },\n\n async findOne(id: unknown) {\n const result: any = await strapi.db?.query('admin::audit-log').findOne({\n where: { id },\n populate: ['user'],\n select: ['action', 'date', 'payload'],\n });\n\n if (!result) {\n return null;\n }\n\n const { user, ...rest } = result;\n return {\n ...rest,\n user: user ? getSanitizedUser(user) : null,\n };\n },\n\n deleteExpiredEvents(expirationDate: Date) {\n return strapi.db?.query('admin::audit-log').deleteMany({\n where: {\n date: {\n $lt: expirationDate.toISOString(),\n },\n },\n });\n },\n };\n};\n\nexport { createAuditLogsService };\n"],"names":["getSanitizedUser","user","displayName","email","username","firstname","lastname","id","createAuditLogsService","strapi","saveEvent","event","userId","rest","auditLog","db","query","create","data","findMany","results","pagination","findPage","populate","select","get","transform","sanitizedResults","map","result","findOne","where","deleteExpiredEvents","expirationDate","deleteMany","date","$lt","toISOString"],"mappings":"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"}
1
+ {"version":3,"file":"audit-logs.js","sources":["../../../../../../../ee/server/src/audit-logs/services/audit-logs.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\ninterface Event {\n action: string;\n date: Date;\n userId: string | number;\n payload: Record<string, unknown>;\n}\n\ninterface Log extends Omit<Event, 'userId'> {\n user: string | number;\n}\n\nconst getSanitizedUser = (user: any) => {\n let displayName = user.email;\n\n if (user.username) {\n displayName = user.username;\n } else if (user.firstname && user.lastname) {\n displayName = `${user.firstname} ${user.lastname}`;\n }\n\n return {\n id: user.id,\n email: user.email,\n displayName,\n };\n};\n\n/**\n * @description\n * Manages audit logs interaction with the database. Accessible via strapi.get('audit-logs')\n */\nconst createAuditLogsService = (strapi: Core.Strapi) => {\n return {\n async saveEvent(event: Event) {\n const { userId, ...rest } = event;\n\n const auditLog: Log = { ...rest, user: userId };\n\n // Save to database\n await strapi.db?.query('admin::audit-log').create({ data: auditLog });\n\n return this;\n },\n\n async findMany(query: unknown) {\n const { results, pagination } = await strapi.db.query('admin::audit-log').findPage({\n populate: ['user'],\n select: ['action', 'date', 'payload'],\n ...strapi.get('query-params').transform('admin::audit-log', query),\n });\n\n const sanitizedResults = results.map((result: any) => {\n const { user, ...rest } = result;\n return {\n ...rest,\n user: user ? getSanitizedUser(user) : null,\n };\n });\n\n return {\n results: sanitizedResults,\n pagination,\n };\n },\n\n async findManyUsers(query: { page?: number | string; pageSize?: number | string }) {\n const { page = 1, pageSize = 10 } = query;\n\n const userAttribute = strapi.db.metadata.get('admin::audit-log').attributes.user;\n\n if (\n userAttribute?.type !== 'relation' ||\n !('joinTable' in userAttribute) ||\n !userAttribute.joinTable ||\n !('inverseJoinColumn' in userAttribute.joinTable)\n ) {\n throw new Error('The audit log user relation is expected to use a join table');\n }\n\n const { joinTable } = userAttribute;\n\n const authorIds = await strapi.db\n .connection(joinTable.name)\n .distinct(joinTable.inverseJoinColumn.name)\n .pluck(joinTable.inverseJoinColumn.name);\n\n const { results, pagination } = await strapi.db.query('admin::user').findPage({\n select: ['id', 'email', 'username', 'firstname', 'lastname'],\n where: { id: { $in: authorIds } },\n orderBy: { id: 'asc' },\n page: Number(page),\n pageSize: Number(pageSize),\n });\n\n return {\n results: results.map(getSanitizedUser),\n pagination,\n };\n },\n\n async findOne(id: unknown) {\n const result: any = await strapi.db?.query('admin::audit-log').findOne({\n where: { id },\n populate: ['user'],\n select: ['action', 'date', 'payload'],\n });\n\n if (!result) {\n return null;\n }\n\n const { user, ...rest } = result;\n return {\n ...rest,\n user: user ? getSanitizedUser(user) : null,\n };\n },\n\n deleteExpiredEvents(expirationDate: Date) {\n return strapi.db?.query('admin::audit-log').deleteMany({\n where: {\n date: {\n $lt: expirationDate.toISOString(),\n },\n },\n });\n },\n };\n};\n\nexport { createAuditLogsService };\n"],"names":["getSanitizedUser","user","displayName","email","username","firstname","lastname","id","createAuditLogsService","strapi","saveEvent","event","userId","rest","auditLog","db","query","create","data","findMany","results","pagination","findPage","populate","select","get","transform","sanitizedResults","map","result","findManyUsers","page","pageSize","userAttribute","metadata","attributes","type","joinTable","Error","authorIds","connection","name","distinct","inverseJoinColumn","pluck","where","$in","orderBy","Number","findOne","deleteExpiredEvents","expirationDate","deleteMany","date","$lt","toISOString"],"mappings":"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"}
@@ -29,7 +29,7 @@ const getSanitizedUser = (user)=>{
29
29
  return this;
30
30
  },
31
31
  async findMany (query) {
32
- const { results, pagination } = await strapi.db?.query('admin::audit-log').findPage({
32
+ const { results, pagination } = await strapi.db.query('admin::audit-log').findPage({
33
33
  populate: [
34
34
  'user'
35
35
  ],
@@ -52,6 +52,38 @@ const getSanitizedUser = (user)=>{
52
52
  pagination
53
53
  };
54
54
  },
55
+ async findManyUsers (query) {
56
+ const { page = 1, pageSize = 10 } = query;
57
+ const userAttribute = strapi.db.metadata.get('admin::audit-log').attributes.user;
58
+ if (userAttribute?.type !== 'relation' || !('joinTable' in userAttribute) || !userAttribute.joinTable || !('inverseJoinColumn' in userAttribute.joinTable)) {
59
+ throw new Error('The audit log user relation is expected to use a join table');
60
+ }
61
+ const { joinTable } = userAttribute;
62
+ const authorIds = await strapi.db.connection(joinTable.name).distinct(joinTable.inverseJoinColumn.name).pluck(joinTable.inverseJoinColumn.name);
63
+ const { results, pagination } = await strapi.db.query('admin::user').findPage({
64
+ select: [
65
+ 'id',
66
+ 'email',
67
+ 'username',
68
+ 'firstname',
69
+ 'lastname'
70
+ ],
71
+ where: {
72
+ id: {
73
+ $in: authorIds
74
+ }
75
+ },
76
+ orderBy: {
77
+ id: 'asc'
78
+ },
79
+ page: Number(page),
80
+ pageSize: Number(pageSize)
81
+ });
82
+ return {
83
+ results: results.map(getSanitizedUser),
84
+ pagination
85
+ };
86
+ },
55
87
  async findOne (id) {
56
88
  const result = await strapi.db?.query('admin::audit-log').findOne({
57
89
  where: {
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logs.mjs","sources":["../../../../../../../ee/server/src/audit-logs/services/audit-logs.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\ninterface Event {\n action: string;\n date: Date;\n userId: string | number;\n payload: Record<string, unknown>;\n}\n\ninterface Log extends Omit<Event, 'userId'> {\n user: string | number;\n}\n\nconst getSanitizedUser = (user: any) => {\n let displayName = user.email;\n\n if (user.username) {\n displayName = user.username;\n } else if (user.firstname && user.lastname) {\n displayName = `${user.firstname} ${user.lastname}`;\n }\n\n return {\n id: user.id,\n email: user.email,\n displayName,\n };\n};\n\n/**\n * @description\n * Manages audit logs interaction with the database. Accessible via strapi.get('audit-logs')\n */\nconst createAuditLogsService = (strapi: Core.Strapi) => {\n return {\n async saveEvent(event: Event) {\n const { userId, ...rest } = event;\n\n const auditLog: Log = { ...rest, user: userId };\n\n // Save to database\n await strapi.db?.query('admin::audit-log').create({ data: auditLog });\n\n return this;\n },\n\n async findMany(query: unknown) {\n const { results, pagination } = await strapi.db?.query('admin::audit-log').findPage({\n populate: ['user'],\n select: ['action', 'date', 'payload'],\n ...strapi.get('query-params').transform('admin::audit-log', query),\n });\n\n const sanitizedResults = results.map((result: any) => {\n const { user, ...rest } = result;\n return {\n ...rest,\n user: user ? getSanitizedUser(user) : null,\n };\n });\n\n return {\n results: sanitizedResults,\n pagination,\n };\n },\n\n async findOne(id: unknown) {\n const result: any = await strapi.db?.query('admin::audit-log').findOne({\n where: { id },\n populate: ['user'],\n select: ['action', 'date', 'payload'],\n });\n\n if (!result) {\n return null;\n }\n\n const { user, ...rest } = result;\n return {\n ...rest,\n user: user ? getSanitizedUser(user) : null,\n };\n },\n\n deleteExpiredEvents(expirationDate: Date) {\n return strapi.db?.query('admin::audit-log').deleteMany({\n where: {\n date: {\n $lt: expirationDate.toISOString(),\n },\n },\n });\n },\n };\n};\n\nexport { createAuditLogsService };\n"],"names":["getSanitizedUser","user","displayName","email","username","firstname","lastname","id","createAuditLogsService","strapi","saveEvent","event","userId","rest","auditLog","db","query","create","data","findMany","results","pagination","findPage","populate","select","get","transform","sanitizedResults","map","result","findOne","where","deleteExpiredEvents","expirationDate","deleteMany","date","$lt","toISOString"],"mappings":"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"}
1
+ {"version":3,"file":"audit-logs.mjs","sources":["../../../../../../../ee/server/src/audit-logs/services/audit-logs.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\ninterface Event {\n action: string;\n date: Date;\n userId: string | number;\n payload: Record<string, unknown>;\n}\n\ninterface Log extends Omit<Event, 'userId'> {\n user: string | number;\n}\n\nconst getSanitizedUser = (user: any) => {\n let displayName = user.email;\n\n if (user.username) {\n displayName = user.username;\n } else if (user.firstname && user.lastname) {\n displayName = `${user.firstname} ${user.lastname}`;\n }\n\n return {\n id: user.id,\n email: user.email,\n displayName,\n };\n};\n\n/**\n * @description\n * Manages audit logs interaction with the database. Accessible via strapi.get('audit-logs')\n */\nconst createAuditLogsService = (strapi: Core.Strapi) => {\n return {\n async saveEvent(event: Event) {\n const { userId, ...rest } = event;\n\n const auditLog: Log = { ...rest, user: userId };\n\n // Save to database\n await strapi.db?.query('admin::audit-log').create({ data: auditLog });\n\n return this;\n },\n\n async findMany(query: unknown) {\n const { results, pagination } = await strapi.db.query('admin::audit-log').findPage({\n populate: ['user'],\n select: ['action', 'date', 'payload'],\n ...strapi.get('query-params').transform('admin::audit-log', query),\n });\n\n const sanitizedResults = results.map((result: any) => {\n const { user, ...rest } = result;\n return {\n ...rest,\n user: user ? getSanitizedUser(user) : null,\n };\n });\n\n return {\n results: sanitizedResults,\n pagination,\n };\n },\n\n async findManyUsers(query: { page?: number | string; pageSize?: number | string }) {\n const { page = 1, pageSize = 10 } = query;\n\n const userAttribute = strapi.db.metadata.get('admin::audit-log').attributes.user;\n\n if (\n userAttribute?.type !== 'relation' ||\n !('joinTable' in userAttribute) ||\n !userAttribute.joinTable ||\n !('inverseJoinColumn' in userAttribute.joinTable)\n ) {\n throw new Error('The audit log user relation is expected to use a join table');\n }\n\n const { joinTable } = userAttribute;\n\n const authorIds = await strapi.db\n .connection(joinTable.name)\n .distinct(joinTable.inverseJoinColumn.name)\n .pluck(joinTable.inverseJoinColumn.name);\n\n const { results, pagination } = await strapi.db.query('admin::user').findPage({\n select: ['id', 'email', 'username', 'firstname', 'lastname'],\n where: { id: { $in: authorIds } },\n orderBy: { id: 'asc' },\n page: Number(page),\n pageSize: Number(pageSize),\n });\n\n return {\n results: results.map(getSanitizedUser),\n pagination,\n };\n },\n\n async findOne(id: unknown) {\n const result: any = await strapi.db?.query('admin::audit-log').findOne({\n where: { id },\n populate: ['user'],\n select: ['action', 'date', 'payload'],\n });\n\n if (!result) {\n return null;\n }\n\n const { user, ...rest } = result;\n return {\n ...rest,\n user: user ? getSanitizedUser(user) : null,\n };\n },\n\n deleteExpiredEvents(expirationDate: Date) {\n return strapi.db?.query('admin::audit-log').deleteMany({\n where: {\n date: {\n $lt: expirationDate.toISOString(),\n },\n },\n });\n },\n };\n};\n\nexport { createAuditLogsService };\n"],"names":["getSanitizedUser","user","displayName","email","username","firstname","lastname","id","createAuditLogsService","strapi","saveEvent","event","userId","rest","auditLog","db","query","create","data","findMany","results","pagination","findPage","populate","select","get","transform","sanitizedResults","map","result","findManyUsers","page","pageSize","userAttribute","metadata","attributes","type","joinTable","Error","authorIds","connection","name","distinct","inverseJoinColumn","pluck","where","$in","orderBy","Number","findOne","deleteExpiredEvents","expirationDate","deleteMany","date","$lt","toISOString"],"mappings":"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"}
@@ -13,9 +13,17 @@ const validateFindManySchema = utils.yup.object().shape({
13
13
  pageSize: utils.yup.number().integer().min(1).max(100),
14
14
  sort: utils.yup.mixed().oneOf(ALLOWED_SORT_STRINGS)
15
15
  }).required();
16
+ const validateFindManyUsersSchema = utils.yup.object().shape({
17
+ page: utils.yup.number().integer().min(1),
18
+ pageSize: utils.yup.number().integer().min(1).max(100)
19
+ }).required();
16
20
  const validateFindMany = utils.validateYupSchema(validateFindManySchema, {
17
21
  strict: false
18
22
  });
23
+ const validateFindManyUsers = utils.validateYupSchema(validateFindManyUsersSchema, {
24
+ strict: false
25
+ });
19
26
 
20
27
  exports.validateFindMany = validateFindMany;
28
+ exports.validateFindManyUsers = validateFindManyUsers;
21
29
  //# sourceMappingURL=audit-logs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logs.js","sources":["../../../../../../../ee/server/src/audit-logs/validation/audit-logs.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\nconst ALLOWED_SORT_STRINGS = ['action:ASC', 'action:DESC', 'date:ASC', 'date:DESC'];\n\nconst validateFindManySchema = yup\n .object()\n .shape({\n page: yup.number().integer().min(1),\n pageSize: yup.number().integer().min(1).max(100),\n sort: yup.mixed().oneOf(ALLOWED_SORT_STRINGS),\n })\n .required();\n\nexport const validateFindMany = validateYupSchema(validateFindManySchema, { strict: false });\n\nexport default {\n validateFindMany,\n};\n"],"names":["ALLOWED_SORT_STRINGS","validateFindManySchema","yup","object","shape","page","number","integer","min","pageSize","max","sort","mixed","oneOf","required","validateFindMany","validateYupSchema","strict"],"mappings":";;;;AAEA,MAAMA,oBAAAA,GAAuB;AAAC,IAAA,YAAA;AAAc,IAAA,aAAA;AAAe,IAAA,UAAA;AAAY,IAAA;AAAY,CAAA;AAEnF,MAAMC,sBAAAA,GAAyBC,SAAAA,CAC5BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,UAAII,MAAM,EAAA,CAAGC,OAAO,EAAA,CAAGC,GAAG,CAAC,CAAA,CAAA;IACjCC,QAAAA,EAAUP,SAAAA,CAAII,MAAM,EAAA,CAAGC,OAAO,GAAGC,GAAG,CAAC,CAAA,CAAA,CAAGE,GAAG,CAAC,GAAA,CAAA;AAC5CC,IAAAA,IAAAA,EAAMT,SAAAA,CAAIU,KAAK,EAAA,CAAGC,KAAK,CAACb,oBAAAA;AAC1B,CAAA,CAAA,CACCc,QAAQ,EAAA;AAEJ,MAAMC,gBAAAA,GAAmBC,uBAAAA,CAAkBf,sBAAAA,EAAwB;IAAEgB,MAAAA,EAAQ;AAAM,CAAA;;;;"}
1
+ {"version":3,"file":"audit-logs.js","sources":["../../../../../../../ee/server/src/audit-logs/validation/audit-logs.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\nconst ALLOWED_SORT_STRINGS = ['action:ASC', 'action:DESC', 'date:ASC', 'date:DESC'];\n\nconst validateFindManySchema = yup\n .object()\n .shape({\n page: yup.number().integer().min(1),\n pageSize: yup.number().integer().min(1).max(100),\n sort: yup.mixed().oneOf(ALLOWED_SORT_STRINGS),\n })\n .required();\n\nconst validateFindManyUsersSchema = yup\n .object()\n .shape({\n page: yup.number().integer().min(1),\n pageSize: yup.number().integer().min(1).max(100),\n })\n .required();\n\nexport const validateFindMany = validateYupSchema(validateFindManySchema, { strict: false });\nexport const validateFindManyUsers = validateYupSchema(validateFindManyUsersSchema, {\n strict: false,\n});\n\nexport default {\n validateFindMany,\n validateFindManyUsers,\n};\n"],"names":["ALLOWED_SORT_STRINGS","validateFindManySchema","yup","object","shape","page","number","integer","min","pageSize","max","sort","mixed","oneOf","required","validateFindManyUsersSchema","validateFindMany","validateYupSchema","strict","validateFindManyUsers"],"mappings":";;;;AAEA,MAAMA,oBAAAA,GAAuB;AAAC,IAAA,YAAA;AAAc,IAAA,aAAA;AAAe,IAAA,UAAA;AAAY,IAAA;AAAY,CAAA;AAEnF,MAAMC,sBAAAA,GAAyBC,SAAAA,CAC5BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,UAAII,MAAM,EAAA,CAAGC,OAAO,EAAA,CAAGC,GAAG,CAAC,CAAA,CAAA;IACjCC,QAAAA,EAAUP,SAAAA,CAAII,MAAM,EAAA,CAAGC,OAAO,GAAGC,GAAG,CAAC,CAAA,CAAA,CAAGE,GAAG,CAAC,GAAA,CAAA;AAC5CC,IAAAA,IAAAA,EAAMT,SAAAA,CAAIU,KAAK,EAAA,CAAGC,KAAK,CAACb,oBAAAA;AAC1B,CAAA,CAAA,CACCc,QAAQ,EAAA;AAEX,MAAMC,2BAAAA,GAA8Bb,SAAAA,CACjCC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,UAAII,MAAM,EAAA,CAAGC,OAAO,EAAA,CAAGC,GAAG,CAAC,CAAA,CAAA;IACjCC,QAAAA,EAAUP,SAAAA,CAAII,MAAM,EAAA,CAAGC,OAAO,GAAGC,GAAG,CAAC,CAAA,CAAA,CAAGE,GAAG,CAAC,GAAA;AAC9C,CAAA,CAAA,CACCI,QAAQ,EAAA;AAEJ,MAAME,gBAAAA,GAAmBC,uBAAAA,CAAkBhB,sBAAAA,EAAwB;IAAEiB,MAAAA,EAAQ;AAAM,CAAA;AACnF,MAAMC,qBAAAA,GAAwBF,uBAAAA,CAAkBF,2BAAAA,EAA6B;IAClFG,MAAAA,EAAQ;AACV,CAAA;;;;;"}
@@ -11,9 +11,16 @@ const validateFindManySchema = yup.object().shape({
11
11
  pageSize: yup.number().integer().min(1).max(100),
12
12
  sort: yup.mixed().oneOf(ALLOWED_SORT_STRINGS)
13
13
  }).required();
14
+ const validateFindManyUsersSchema = yup.object().shape({
15
+ page: yup.number().integer().min(1),
16
+ pageSize: yup.number().integer().min(1).max(100)
17
+ }).required();
14
18
  const validateFindMany = validateYupSchema(validateFindManySchema, {
15
19
  strict: false
16
20
  });
21
+ const validateFindManyUsers = validateYupSchema(validateFindManyUsersSchema, {
22
+ strict: false
23
+ });
17
24
 
18
- export { validateFindMany };
25
+ export { validateFindMany, validateFindManyUsers };
19
26
  //# sourceMappingURL=audit-logs.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logs.mjs","sources":["../../../../../../../ee/server/src/audit-logs/validation/audit-logs.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\nconst ALLOWED_SORT_STRINGS = ['action:ASC', 'action:DESC', 'date:ASC', 'date:DESC'];\n\nconst validateFindManySchema = yup\n .object()\n .shape({\n page: yup.number().integer().min(1),\n pageSize: yup.number().integer().min(1).max(100),\n sort: yup.mixed().oneOf(ALLOWED_SORT_STRINGS),\n })\n .required();\n\nexport const validateFindMany = validateYupSchema(validateFindManySchema, { strict: false });\n\nexport default {\n validateFindMany,\n};\n"],"names":["ALLOWED_SORT_STRINGS","validateFindManySchema","yup","object","shape","page","number","integer","min","pageSize","max","sort","mixed","oneOf","required","validateFindMany","validateYupSchema","strict"],"mappings":";;AAEA,MAAMA,oBAAAA,GAAuB;AAAC,IAAA,YAAA;AAAc,IAAA,aAAA;AAAe,IAAA,UAAA;AAAY,IAAA;AAAY,CAAA;AAEnF,MAAMC,sBAAAA,GAAyBC,GAAAA,CAC5BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,IAAII,MAAM,EAAA,CAAGC,OAAO,EAAA,CAAGC,GAAG,CAAC,CAAA,CAAA;IACjCC,QAAAA,EAAUP,GAAAA,CAAII,MAAM,EAAA,CAAGC,OAAO,GAAGC,GAAG,CAAC,CAAA,CAAA,CAAGE,GAAG,CAAC,GAAA,CAAA;AAC5CC,IAAAA,IAAAA,EAAMT,GAAAA,CAAIU,KAAK,EAAA,CAAGC,KAAK,CAACb,oBAAAA;AAC1B,CAAA,CAAA,CACCc,QAAQ,EAAA;AAEJ,MAAMC,gBAAAA,GAAmBC,iBAAAA,CAAkBf,sBAAAA,EAAwB;IAAEgB,MAAAA,EAAQ;AAAM,CAAA;;;;"}
1
+ {"version":3,"file":"audit-logs.mjs","sources":["../../../../../../../ee/server/src/audit-logs/validation/audit-logs.ts"],"sourcesContent":["import { yup, validateYupSchema } from '@strapi/utils';\n\nconst ALLOWED_SORT_STRINGS = ['action:ASC', 'action:DESC', 'date:ASC', 'date:DESC'];\n\nconst validateFindManySchema = yup\n .object()\n .shape({\n page: yup.number().integer().min(1),\n pageSize: yup.number().integer().min(1).max(100),\n sort: yup.mixed().oneOf(ALLOWED_SORT_STRINGS),\n })\n .required();\n\nconst validateFindManyUsersSchema = yup\n .object()\n .shape({\n page: yup.number().integer().min(1),\n pageSize: yup.number().integer().min(1).max(100),\n })\n .required();\n\nexport const validateFindMany = validateYupSchema(validateFindManySchema, { strict: false });\nexport const validateFindManyUsers = validateYupSchema(validateFindManyUsersSchema, {\n strict: false,\n});\n\nexport default {\n validateFindMany,\n validateFindManyUsers,\n};\n"],"names":["ALLOWED_SORT_STRINGS","validateFindManySchema","yup","object","shape","page","number","integer","min","pageSize","max","sort","mixed","oneOf","required","validateFindManyUsersSchema","validateFindMany","validateYupSchema","strict","validateFindManyUsers"],"mappings":";;AAEA,MAAMA,oBAAAA,GAAuB;AAAC,IAAA,YAAA;AAAc,IAAA,aAAA;AAAe,IAAA,UAAA;AAAY,IAAA;AAAY,CAAA;AAEnF,MAAMC,sBAAAA,GAAyBC,GAAAA,CAC5BC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,IAAII,MAAM,EAAA,CAAGC,OAAO,EAAA,CAAGC,GAAG,CAAC,CAAA,CAAA;IACjCC,QAAAA,EAAUP,GAAAA,CAAII,MAAM,EAAA,CAAGC,OAAO,GAAGC,GAAG,CAAC,CAAA,CAAA,CAAGE,GAAG,CAAC,GAAA,CAAA;AAC5CC,IAAAA,IAAAA,EAAMT,GAAAA,CAAIU,KAAK,EAAA,CAAGC,KAAK,CAACb,oBAAAA;AAC1B,CAAA,CAAA,CACCc,QAAQ,EAAA;AAEX,MAAMC,2BAAAA,GAA8Bb,GAAAA,CACjCC,MAAM,EAAA,CACNC,KAAK,CAAC;AACLC,IAAAA,IAAAA,EAAMH,IAAII,MAAM,EAAA,CAAGC,OAAO,EAAA,CAAGC,GAAG,CAAC,CAAA,CAAA;IACjCC,QAAAA,EAAUP,GAAAA,CAAII,MAAM,EAAA,CAAGC,OAAO,GAAGC,GAAG,CAAC,CAAA,CAAA,CAAGE,GAAG,CAAC,GAAA;AAC9C,CAAA,CAAA,CACCI,QAAQ,EAAA;AAEJ,MAAME,gBAAAA,GAAmBC,iBAAAA,CAAkBhB,sBAAAA,EAAwB;IAAEiB,MAAAA,EAAQ;AAAM,CAAA;AACnF,MAAMC,qBAAAA,GAAwBF,iBAAAA,CAAkBF,2BAAAA,EAA6B;IAClFG,MAAAA,EAAQ;AACV,CAAA;;;;"}
@@ -22,6 +22,7 @@
22
22
  const isValidCookieDomain = (domain)=>{
23
23
  // RFC 6265 domain-av: a host name. No leading dot required, no scheme, no
24
24
  // path, no port, and none of the control/attribute-separator characters.
25
+ // eslint-disable-next-line no-control-regex -- CTL chars are exactly what RFC 6265 forbids
25
26
  return !/[\x00-\x1F\x7F;,\s/:]/.test(domain);
26
27
  };
27
28
  const resolveAuthCookieDomain = (configuredDomain, warn = console.warn)=>{
@@ -1 +1 @@
1
- {"version":3,"file":"auth-cookie-domain.js","sources":["../../../../shared/utils/auth-cookie-domain.ts"],"sourcesContent":["/**\n * Domain attribute of the admin auth (access) token cookie, configurable\n * through `admin.auth.cookie.domain` (falling back to `admin.auth.domain`) so\n * multiple Strapi instances under the same parent domain share, or stay\n * isolated to, the intended host.\n *\n * Browser-safe single source for both sides of the handoff: the admin panel\n * cannot read server config, so the build transports the config value into\n * the bundle through the internal `STRAPI_ADMIN_AUTH_COOKIE_DOMAIN` variable\n * (see create-build-context.ts in @strapi/strapi); the server resolves the\n * same config at runtime. Changing the domain requires an admin rebuild, like\n * any other admin config change.\n *\n * Defaults to `undefined` (host-only cookie) to match the browser default and\n * the refresh-cookie behaviour in `getRefreshCookieOptions` when no domain is\n * configured. A host-only cookie and a `Domain`-scoped cookie are distinct\n * entries in the browser cookie store, so set and delete must agree on the\n * domain or logout leaves a colliding copy behind.\n */\nexport const DEFAULT_AUTH_COOKIE_DOMAIN = undefined;\n\nconst isValidCookieDomain = (domain: string): boolean => {\n // RFC 6265 domain-av: a host name. No leading dot required, no scheme, no\n // path, no port, and none of the control/attribute-separator characters.\n return !/[\\x00-\\x1F\\x7F;,\\s/:]/.test(domain);\n};\n\nexport const resolveAuthCookieDomain = (\n configuredDomain?: string,\n warn: (message: string) => void = console.warn\n): string | undefined => {\n const cookieDomain = (configuredDomain || '').trim();\n\n if (!cookieDomain) {\n return DEFAULT_AUTH_COOKIE_DOMAIN;\n }\n\n if (!isValidCookieDomain(cookieDomain)) {\n warn(\n `Ignoring invalid admin auth cookie domain \"${cookieDomain}\" (must be a bare host name); using a host-only cookie instead.`\n );\n return DEFAULT_AUTH_COOKIE_DOMAIN;\n }\n\n return cookieDomain;\n};\n"],"names":["DEFAULT_AUTH_COOKIE_DOMAIN","undefined","isValidCookieDomain","domain","test","resolveAuthCookieDomain","configuredDomain","warn","console","cookieDomain","trim"],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;IAmBO,MAAMA,0BAAAA,GAA6BC;AAE1C,MAAMC,sBAAsB,CAACC,MAAAA,GAAAA;;;IAG3B,OAAO,CAAC,uBAAA,CAAwBC,IAAI,CAACD,MAAAA,CAAAA;AACvC,CAAA;MAEaE,uBAAAA,GAA0B,CACrCC,gBAAAA,EACAC,IAAAA,GAAkCC,QAAQD,IAAI,GAAA;AAE9C,IAAA,MAAME,eAAe,CAACH,gBAAAA,IAAoB,EAAC,EAAGI,IAAI,EAAA;AAElD,IAAA,IAAI,CAACD,YAAAA,EAAc;QACjB,OAAOT,0BAAAA;AACT,IAAA;IAEA,IAAI,CAACE,oBAAoBO,YAAAA,CAAAA,EAAe;AACtCF,QAAAA,IAAAA,CACE,CAAC,2CAA2C,EAAEE,YAAAA,CAAa,+DAA+D,CAAC,CAAA;QAE7H,OAAOT,0BAAAA;AACT,IAAA;IAEA,OAAOS,YAAAA;AACT;;;;;"}
1
+ {"version":3,"file":"auth-cookie-domain.js","sources":["../../../../shared/utils/auth-cookie-domain.ts"],"sourcesContent":["/**\n * Domain attribute of the admin auth (access) token cookie, configurable\n * through `admin.auth.cookie.domain` (falling back to `admin.auth.domain`) so\n * multiple Strapi instances under the same parent domain share, or stay\n * isolated to, the intended host.\n *\n * Browser-safe single source for both sides of the handoff: the admin panel\n * cannot read server config, so the build transports the config value into\n * the bundle through the internal `STRAPI_ADMIN_AUTH_COOKIE_DOMAIN` variable\n * (see create-build-context.ts in @strapi/strapi); the server resolves the\n * same config at runtime. Changing the domain requires an admin rebuild, like\n * any other admin config change.\n *\n * Defaults to `undefined` (host-only cookie) to match the browser default and\n * the refresh-cookie behaviour in `getRefreshCookieOptions` when no domain is\n * configured. A host-only cookie and a `Domain`-scoped cookie are distinct\n * entries in the browser cookie store, so set and delete must agree on the\n * domain or logout leaves a colliding copy behind.\n */\nexport const DEFAULT_AUTH_COOKIE_DOMAIN = undefined;\n\nconst isValidCookieDomain = (domain: string): boolean => {\n // RFC 6265 domain-av: a host name. No leading dot required, no scheme, no\n // path, no port, and none of the control/attribute-separator characters.\n // eslint-disable-next-line no-control-regex -- CTL chars are exactly what RFC 6265 forbids\n return !/[\\x00-\\x1F\\x7F;,\\s/:]/.test(domain);\n};\n\nexport const resolveAuthCookieDomain = (\n configuredDomain?: string,\n warn: (message: string) => void = console.warn\n): string | undefined => {\n const cookieDomain = (configuredDomain || '').trim();\n\n if (!cookieDomain) {\n return DEFAULT_AUTH_COOKIE_DOMAIN;\n }\n\n if (!isValidCookieDomain(cookieDomain)) {\n warn(\n `Ignoring invalid admin auth cookie domain \"${cookieDomain}\" (must be a bare host name); using a host-only cookie instead.`\n );\n return DEFAULT_AUTH_COOKIE_DOMAIN;\n }\n\n return cookieDomain;\n};\n"],"names":["DEFAULT_AUTH_COOKIE_DOMAIN","undefined","isValidCookieDomain","domain","test","resolveAuthCookieDomain","configuredDomain","warn","console","cookieDomain","trim"],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;IAmBO,MAAMA,0BAAAA,GAA6BC;AAE1C,MAAMC,sBAAsB,CAACC,MAAAA,GAAAA;;;;IAI3B,OAAO,CAAC,uBAAA,CAAwBC,IAAI,CAACD,MAAAA,CAAAA;AACvC,CAAA;MAEaE,uBAAAA,GAA0B,CACrCC,gBAAAA,EACAC,IAAAA,GAAkCC,QAAQD,IAAI,GAAA;AAE9C,IAAA,MAAME,eAAe,CAACH,gBAAAA,IAAoB,EAAC,EAAGI,IAAI,EAAA;AAElD,IAAA,IAAI,CAACD,YAAAA,EAAc;QACjB,OAAOT,0BAAAA;AACT,IAAA;IAEA,IAAI,CAACE,oBAAoBO,YAAAA,CAAAA,EAAe;AACtCF,QAAAA,IAAAA,CACE,CAAC,2CAA2C,EAAEE,YAAAA,CAAa,+DAA+D,CAAC,CAAA;QAE7H,OAAOT,0BAAAA;AACT,IAAA;IAEA,OAAOS,YAAAA;AACT;;;;;"}
@@ -20,6 +20,7 @@
20
20
  const isValidCookieDomain = (domain)=>{
21
21
  // RFC 6265 domain-av: a host name. No leading dot required, no scheme, no
22
22
  // path, no port, and none of the control/attribute-separator characters.
23
+ // eslint-disable-next-line no-control-regex -- CTL chars are exactly what RFC 6265 forbids
23
24
  return !/[\x00-\x1F\x7F;,\s/:]/.test(domain);
24
25
  };
25
26
  const resolveAuthCookieDomain = (configuredDomain, warn = console.warn)=>{
@@ -1 +1 @@
1
- {"version":3,"file":"auth-cookie-domain.mjs","sources":["../../../../shared/utils/auth-cookie-domain.ts"],"sourcesContent":["/**\n * Domain attribute of the admin auth (access) token cookie, configurable\n * through `admin.auth.cookie.domain` (falling back to `admin.auth.domain`) so\n * multiple Strapi instances under the same parent domain share, or stay\n * isolated to, the intended host.\n *\n * Browser-safe single source for both sides of the handoff: the admin panel\n * cannot read server config, so the build transports the config value into\n * the bundle through the internal `STRAPI_ADMIN_AUTH_COOKIE_DOMAIN` variable\n * (see create-build-context.ts in @strapi/strapi); the server resolves the\n * same config at runtime. Changing the domain requires an admin rebuild, like\n * any other admin config change.\n *\n * Defaults to `undefined` (host-only cookie) to match the browser default and\n * the refresh-cookie behaviour in `getRefreshCookieOptions` when no domain is\n * configured. A host-only cookie and a `Domain`-scoped cookie are distinct\n * entries in the browser cookie store, so set and delete must agree on the\n * domain or logout leaves a colliding copy behind.\n */\nexport const DEFAULT_AUTH_COOKIE_DOMAIN = undefined;\n\nconst isValidCookieDomain = (domain: string): boolean => {\n // RFC 6265 domain-av: a host name. No leading dot required, no scheme, no\n // path, no port, and none of the control/attribute-separator characters.\n return !/[\\x00-\\x1F\\x7F;,\\s/:]/.test(domain);\n};\n\nexport const resolveAuthCookieDomain = (\n configuredDomain?: string,\n warn: (message: string) => void = console.warn\n): string | undefined => {\n const cookieDomain = (configuredDomain || '').trim();\n\n if (!cookieDomain) {\n return DEFAULT_AUTH_COOKIE_DOMAIN;\n }\n\n if (!isValidCookieDomain(cookieDomain)) {\n warn(\n `Ignoring invalid admin auth cookie domain \"${cookieDomain}\" (must be a bare host name); using a host-only cookie instead.`\n );\n return DEFAULT_AUTH_COOKIE_DOMAIN;\n }\n\n return cookieDomain;\n};\n"],"names":["DEFAULT_AUTH_COOKIE_DOMAIN","undefined","isValidCookieDomain","domain","test","resolveAuthCookieDomain","configuredDomain","warn","console","cookieDomain","trim"],"mappings":"AAAA;;;;;;;;;;;;;;;;;;IAmBO,MAAMA,0BAAAA,GAA6BC;AAE1C,MAAMC,sBAAsB,CAACC,MAAAA,GAAAA;;;IAG3B,OAAO,CAAC,uBAAA,CAAwBC,IAAI,CAACD,MAAAA,CAAAA;AACvC,CAAA;MAEaE,uBAAAA,GAA0B,CACrCC,gBAAAA,EACAC,IAAAA,GAAkCC,QAAQD,IAAI,GAAA;AAE9C,IAAA,MAAME,eAAe,CAACH,gBAAAA,IAAoB,EAAC,EAAGI,IAAI,EAAA;AAElD,IAAA,IAAI,CAACD,YAAAA,EAAc;QACjB,OAAOT,0BAAAA;AACT,IAAA;IAEA,IAAI,CAACE,oBAAoBO,YAAAA,CAAAA,EAAe;AACtCF,QAAAA,IAAAA,CACE,CAAC,2CAA2C,EAAEE,YAAAA,CAAa,+DAA+D,CAAC,CAAA;QAE7H,OAAOT,0BAAAA;AACT,IAAA;IAEA,OAAOS,YAAAA;AACT;;;;"}
1
+ {"version":3,"file":"auth-cookie-domain.mjs","sources":["../../../../shared/utils/auth-cookie-domain.ts"],"sourcesContent":["/**\n * Domain attribute of the admin auth (access) token cookie, configurable\n * through `admin.auth.cookie.domain` (falling back to `admin.auth.domain`) so\n * multiple Strapi instances under the same parent domain share, or stay\n * isolated to, the intended host.\n *\n * Browser-safe single source for both sides of the handoff: the admin panel\n * cannot read server config, so the build transports the config value into\n * the bundle through the internal `STRAPI_ADMIN_AUTH_COOKIE_DOMAIN` variable\n * (see create-build-context.ts in @strapi/strapi); the server resolves the\n * same config at runtime. Changing the domain requires an admin rebuild, like\n * any other admin config change.\n *\n * Defaults to `undefined` (host-only cookie) to match the browser default and\n * the refresh-cookie behaviour in `getRefreshCookieOptions` when no domain is\n * configured. A host-only cookie and a `Domain`-scoped cookie are distinct\n * entries in the browser cookie store, so set and delete must agree on the\n * domain or logout leaves a colliding copy behind.\n */\nexport const DEFAULT_AUTH_COOKIE_DOMAIN = undefined;\n\nconst isValidCookieDomain = (domain: string): boolean => {\n // RFC 6265 domain-av: a host name. No leading dot required, no scheme, no\n // path, no port, and none of the control/attribute-separator characters.\n // eslint-disable-next-line no-control-regex -- CTL chars are exactly what RFC 6265 forbids\n return !/[\\x00-\\x1F\\x7F;,\\s/:]/.test(domain);\n};\n\nexport const resolveAuthCookieDomain = (\n configuredDomain?: string,\n warn: (message: string) => void = console.warn\n): string | undefined => {\n const cookieDomain = (configuredDomain || '').trim();\n\n if (!cookieDomain) {\n return DEFAULT_AUTH_COOKIE_DOMAIN;\n }\n\n if (!isValidCookieDomain(cookieDomain)) {\n warn(\n `Ignoring invalid admin auth cookie domain \"${cookieDomain}\" (must be a bare host name); using a host-only cookie instead.`\n );\n return DEFAULT_AUTH_COOKIE_DOMAIN;\n }\n\n return cookieDomain;\n};\n"],"names":["DEFAULT_AUTH_COOKIE_DOMAIN","undefined","isValidCookieDomain","domain","test","resolveAuthCookieDomain","configuredDomain","warn","console","cookieDomain","trim"],"mappings":"AAAA;;;;;;;;;;;;;;;;;;IAmBO,MAAMA,0BAAAA,GAA6BC;AAE1C,MAAMC,sBAAsB,CAACC,MAAAA,GAAAA;;;;IAI3B,OAAO,CAAC,uBAAA,CAAwBC,IAAI,CAACD,MAAAA,CAAAA;AACvC,CAAA;MAEaE,uBAAAA,GAA0B,CACrCC,gBAAAA,EACAC,IAAAA,GAAkCC,QAAQD,IAAI,GAAA;AAE9C,IAAA,MAAME,eAAe,CAACH,gBAAAA,IAAoB,EAAC,EAAGI,IAAI,EAAA;AAElD,IAAA,IAAI,CAACD,YAAAA,EAAc;QACjB,OAAOT,0BAAAA;AACT,IAAA;IAEA,IAAI,CAACE,oBAAoBO,YAAAA,CAAAA,EAAe;AACtCF,QAAAA,IAAAA,CACE,CAAC,2CAA2C,EAAEE,YAAAA,CAAa,+DAA+D,CAAC,CAAA;QAE7H,OAAOT,0BAAAA;AACT,IAAA;IAEA,OAAOS,YAAAA;AACT;;;;"}
@@ -20,6 +20,7 @@ const isValidCookiePath = (path)=>{
20
20
  return false;
21
21
  }
22
22
  // RFC 6265 path-av: any CHAR except CTLs or ";".
23
+ // eslint-disable-next-line no-control-regex -- CTL chars are exactly what RFC 6265 forbids
23
24
  return !/[\x00-\x1F\x7F;]/.test(path);
24
25
  };
25
26
  const resolveAuthCookiePath = (configuredPath, warn = console.warn)=>{
@@ -1 +1 @@
1
- {"version":3,"file":"auth-cookie-path.js","sources":["../../../../shared/utils/auth-cookie-path.ts"],"sourcesContent":["/**\n * Path attribute of the admin auth (access) token cookie, configurable\n * through `admin.auth.cookie.path` so multiple Strapi instances on the same\n * parent domain can keep separate cookies (e.g. `/strapi-de/admin`).\n *\n * Browser-safe single source for both sides of the handoff: the admin panel\n * cannot read server config, so the build transports the config value into\n * the bundle through the internal `STRAPI_ADMIN_AUTH_COOKIE_PATH` variable\n * (see create-build-context.ts in @strapi/strapi); the server resolves the\n * same config at runtime. Changing the path requires an admin rebuild, like\n * any other admin config change.\n *\n * Defaults to `/admin` to match the refresh-cookie path used by\n * `getRefreshCookieOptions`.\n */\nexport const DEFAULT_AUTH_COOKIE_PATH = '/admin';\n\nconst isValidCookiePath = (path: string): boolean => {\n if (!path.startsWith('/')) {\n return false;\n }\n\n // RFC 6265 path-av: any CHAR except CTLs or \";\".\n return !/[\\x00-\\x1F\\x7F;]/.test(path);\n};\n\nexport const resolveAuthCookiePath = (\n configuredPath?: string,\n warn: (message: string) => void = console.warn\n): string => {\n const cookiePath = (configuredPath || '').trim();\n\n if (!cookiePath) {\n return DEFAULT_AUTH_COOKIE_PATH;\n }\n\n if (!isValidCookiePath(cookiePath)) {\n warn(\n `Ignoring invalid admin auth cookie path \"${cookiePath}\" (must be an absolute path without \";\"); using \"${DEFAULT_AUTH_COOKIE_PATH}\" instead.`\n );\n return DEFAULT_AUTH_COOKIE_PATH;\n }\n\n return cookiePath;\n};\n"],"names":["DEFAULT_AUTH_COOKIE_PATH","isValidCookiePath","path","startsWith","test","resolveAuthCookiePath","configuredPath","warn","console","cookiePath","trim"],"mappings":";;AAAA;;;;;;;;;;;;;;IAeO,MAAMA,wBAAAA,GAA2B;AAExC,MAAMC,oBAAoB,CAACC,IAAAA,GAAAA;AACzB,IAAA,IAAI,CAACA,IAAAA,CAAKC,UAAU,CAAC,GAAA,CAAA,EAAM;QACzB,OAAO,KAAA;AACT,IAAA;;IAGA,OAAO,CAAC,kBAAA,CAAmBC,IAAI,CAACF,IAAAA,CAAAA;AAClC,CAAA;MAEaG,qBAAAA,GAAwB,CACnCC,cAAAA,EACAC,IAAAA,GAAkCC,QAAQD,IAAI,GAAA;AAE9C,IAAA,MAAME,aAAa,CAACH,cAAAA,IAAkB,EAAC,EAAGI,IAAI,EAAA;AAE9C,IAAA,IAAI,CAACD,UAAAA,EAAY;QACf,OAAOT,wBAAAA;AACT,IAAA;IAEA,IAAI,CAACC,kBAAkBQ,UAAAA,CAAAA,EAAa;QAClCF,IAAAA,CACE,CAAC,yCAAyC,EAAEE,UAAAA,CAAW,iDAAiD,EAAET,wBAAAA,CAAyB,UAAU,CAAC,CAAA;QAEhJ,OAAOA,wBAAAA;AACT,IAAA;IAEA,OAAOS,UAAAA;AACT;;;;;"}
1
+ {"version":3,"file":"auth-cookie-path.js","sources":["../../../../shared/utils/auth-cookie-path.ts"],"sourcesContent":["/**\n * Path attribute of the admin auth (access) token cookie, configurable\n * through `admin.auth.cookie.path` so multiple Strapi instances on the same\n * parent domain can keep separate cookies (e.g. `/strapi-de/admin`).\n *\n * Browser-safe single source for both sides of the handoff: the admin panel\n * cannot read server config, so the build transports the config value into\n * the bundle through the internal `STRAPI_ADMIN_AUTH_COOKIE_PATH` variable\n * (see create-build-context.ts in @strapi/strapi); the server resolves the\n * same config at runtime. Changing the path requires an admin rebuild, like\n * any other admin config change.\n *\n * Defaults to `/admin` to match the refresh-cookie path used by\n * `getRefreshCookieOptions`.\n */\nexport const DEFAULT_AUTH_COOKIE_PATH = '/admin';\n\nconst isValidCookiePath = (path: string): boolean => {\n if (!path.startsWith('/')) {\n return false;\n }\n\n // RFC 6265 path-av: any CHAR except CTLs or \";\".\n // eslint-disable-next-line no-control-regex -- CTL chars are exactly what RFC 6265 forbids\n return !/[\\x00-\\x1F\\x7F;]/.test(path);\n};\n\nexport const resolveAuthCookiePath = (\n configuredPath?: string,\n warn: (message: string) => void = console.warn\n): string => {\n const cookiePath = (configuredPath || '').trim();\n\n if (!cookiePath) {\n return DEFAULT_AUTH_COOKIE_PATH;\n }\n\n if (!isValidCookiePath(cookiePath)) {\n warn(\n `Ignoring invalid admin auth cookie path \"${cookiePath}\" (must be an absolute path without \";\"); using \"${DEFAULT_AUTH_COOKIE_PATH}\" instead.`\n );\n return DEFAULT_AUTH_COOKIE_PATH;\n }\n\n return cookiePath;\n};\n"],"names":["DEFAULT_AUTH_COOKIE_PATH","isValidCookiePath","path","startsWith","test","resolveAuthCookiePath","configuredPath","warn","console","cookiePath","trim"],"mappings":";;AAAA;;;;;;;;;;;;;;IAeO,MAAMA,wBAAAA,GAA2B;AAExC,MAAMC,oBAAoB,CAACC,IAAAA,GAAAA;AACzB,IAAA,IAAI,CAACA,IAAAA,CAAKC,UAAU,CAAC,GAAA,CAAA,EAAM;QACzB,OAAO,KAAA;AACT,IAAA;;;IAIA,OAAO,CAAC,kBAAA,CAAmBC,IAAI,CAACF,IAAAA,CAAAA;AAClC,CAAA;MAEaG,qBAAAA,GAAwB,CACnCC,cAAAA,EACAC,IAAAA,GAAkCC,QAAQD,IAAI,GAAA;AAE9C,IAAA,MAAME,aAAa,CAACH,cAAAA,IAAkB,EAAC,EAAGI,IAAI,EAAA;AAE9C,IAAA,IAAI,CAACD,UAAAA,EAAY;QACf,OAAOT,wBAAAA;AACT,IAAA;IAEA,IAAI,CAACC,kBAAkBQ,UAAAA,CAAAA,EAAa;QAClCF,IAAAA,CACE,CAAC,yCAAyC,EAAEE,UAAAA,CAAW,iDAAiD,EAAET,wBAAAA,CAAyB,UAAU,CAAC,CAAA;QAEhJ,OAAOA,wBAAAA;AACT,IAAA;IAEA,OAAOS,UAAAA;AACT;;;;;"}
@@ -18,6 +18,7 @@ const isValidCookiePath = (path)=>{
18
18
  return false;
19
19
  }
20
20
  // RFC 6265 path-av: any CHAR except CTLs or ";".
21
+ // eslint-disable-next-line no-control-regex -- CTL chars are exactly what RFC 6265 forbids
21
22
  return !/[\x00-\x1F\x7F;]/.test(path);
22
23
  };
23
24
  const resolveAuthCookiePath = (configuredPath, warn = console.warn)=>{
@@ -1 +1 @@
1
- {"version":3,"file":"auth-cookie-path.mjs","sources":["../../../../shared/utils/auth-cookie-path.ts"],"sourcesContent":["/**\n * Path attribute of the admin auth (access) token cookie, configurable\n * through `admin.auth.cookie.path` so multiple Strapi instances on the same\n * parent domain can keep separate cookies (e.g. `/strapi-de/admin`).\n *\n * Browser-safe single source for both sides of the handoff: the admin panel\n * cannot read server config, so the build transports the config value into\n * the bundle through the internal `STRAPI_ADMIN_AUTH_COOKIE_PATH` variable\n * (see create-build-context.ts in @strapi/strapi); the server resolves the\n * same config at runtime. Changing the path requires an admin rebuild, like\n * any other admin config change.\n *\n * Defaults to `/admin` to match the refresh-cookie path used by\n * `getRefreshCookieOptions`.\n */\nexport const DEFAULT_AUTH_COOKIE_PATH = '/admin';\n\nconst isValidCookiePath = (path: string): boolean => {\n if (!path.startsWith('/')) {\n return false;\n }\n\n // RFC 6265 path-av: any CHAR except CTLs or \";\".\n return !/[\\x00-\\x1F\\x7F;]/.test(path);\n};\n\nexport const resolveAuthCookiePath = (\n configuredPath?: string,\n warn: (message: string) => void = console.warn\n): string => {\n const cookiePath = (configuredPath || '').trim();\n\n if (!cookiePath) {\n return DEFAULT_AUTH_COOKIE_PATH;\n }\n\n if (!isValidCookiePath(cookiePath)) {\n warn(\n `Ignoring invalid admin auth cookie path \"${cookiePath}\" (must be an absolute path without \";\"); using \"${DEFAULT_AUTH_COOKIE_PATH}\" instead.`\n );\n return DEFAULT_AUTH_COOKIE_PATH;\n }\n\n return cookiePath;\n};\n"],"names":["DEFAULT_AUTH_COOKIE_PATH","isValidCookiePath","path","startsWith","test","resolveAuthCookiePath","configuredPath","warn","console","cookiePath","trim"],"mappings":"AAAA;;;;;;;;;;;;;;IAeO,MAAMA,wBAAAA,GAA2B;AAExC,MAAMC,oBAAoB,CAACC,IAAAA,GAAAA;AACzB,IAAA,IAAI,CAACA,IAAAA,CAAKC,UAAU,CAAC,GAAA,CAAA,EAAM;QACzB,OAAO,KAAA;AACT,IAAA;;IAGA,OAAO,CAAC,kBAAA,CAAmBC,IAAI,CAACF,IAAAA,CAAAA;AAClC,CAAA;MAEaG,qBAAAA,GAAwB,CACnCC,cAAAA,EACAC,IAAAA,GAAkCC,QAAQD,IAAI,GAAA;AAE9C,IAAA,MAAME,aAAa,CAACH,cAAAA,IAAkB,EAAC,EAAGI,IAAI,EAAA;AAE9C,IAAA,IAAI,CAACD,UAAAA,EAAY;QACf,OAAOT,wBAAAA;AACT,IAAA;IAEA,IAAI,CAACC,kBAAkBQ,UAAAA,CAAAA,EAAa;QAClCF,IAAAA,CACE,CAAC,yCAAyC,EAAEE,UAAAA,CAAW,iDAAiD,EAAET,wBAAAA,CAAyB,UAAU,CAAC,CAAA;QAEhJ,OAAOA,wBAAAA;AACT,IAAA;IAEA,OAAOS,UAAAA;AACT;;;;"}
1
+ {"version":3,"file":"auth-cookie-path.mjs","sources":["../../../../shared/utils/auth-cookie-path.ts"],"sourcesContent":["/**\n * Path attribute of the admin auth (access) token cookie, configurable\n * through `admin.auth.cookie.path` so multiple Strapi instances on the same\n * parent domain can keep separate cookies (e.g. `/strapi-de/admin`).\n *\n * Browser-safe single source for both sides of the handoff: the admin panel\n * cannot read server config, so the build transports the config value into\n * the bundle through the internal `STRAPI_ADMIN_AUTH_COOKIE_PATH` variable\n * (see create-build-context.ts in @strapi/strapi); the server resolves the\n * same config at runtime. Changing the path requires an admin rebuild, like\n * any other admin config change.\n *\n * Defaults to `/admin` to match the refresh-cookie path used by\n * `getRefreshCookieOptions`.\n */\nexport const DEFAULT_AUTH_COOKIE_PATH = '/admin';\n\nconst isValidCookiePath = (path: string): boolean => {\n if (!path.startsWith('/')) {\n return false;\n }\n\n // RFC 6265 path-av: any CHAR except CTLs or \";\".\n // eslint-disable-next-line no-control-regex -- CTL chars are exactly what RFC 6265 forbids\n return !/[\\x00-\\x1F\\x7F;]/.test(path);\n};\n\nexport const resolveAuthCookiePath = (\n configuredPath?: string,\n warn: (message: string) => void = console.warn\n): string => {\n const cookiePath = (configuredPath || '').trim();\n\n if (!cookiePath) {\n return DEFAULT_AUTH_COOKIE_PATH;\n }\n\n if (!isValidCookiePath(cookiePath)) {\n warn(\n `Ignoring invalid admin auth cookie path \"${cookiePath}\" (must be an absolute path without \";\"); using \"${DEFAULT_AUTH_COOKIE_PATH}\" instead.`\n );\n return DEFAULT_AUTH_COOKIE_PATH;\n }\n\n return cookiePath;\n};\n"],"names":["DEFAULT_AUTH_COOKIE_PATH","isValidCookiePath","path","startsWith","test","resolveAuthCookiePath","configuredPath","warn","console","cookiePath","trim"],"mappings":"AAAA;;;;;;;;;;;;;;IAeO,MAAMA,wBAAAA,GAA2B;AAExC,MAAMC,oBAAoB,CAACC,IAAAA,GAAAA;AACzB,IAAA,IAAI,CAACA,IAAAA,CAAKC,UAAU,CAAC,GAAA,CAAA,EAAM;QACzB,OAAO,KAAA;AACT,IAAA;;;IAIA,OAAO,CAAC,kBAAA,CAAmBC,IAAI,CAACF,IAAAA,CAAAA;AAClC,CAAA;MAEaG,qBAAAA,GAAwB,CACnCC,cAAAA,EACAC,IAAAA,GAAkCC,QAAQD,IAAI,GAAA;AAE9C,IAAA,MAAME,aAAa,CAACH,cAAAA,IAAkB,EAAC,EAAGI,IAAI,EAAA;AAE9C,IAAA,IAAI,CAACD,UAAAA,EAAY;QACf,OAAOT,wBAAAA;AACT,IAAA;IAEA,IAAI,CAACC,kBAAkBQ,UAAAA,CAAAA,EAAa;QAClCF,IAAAA,CACE,CAAC,yCAAyC,EAAEE,UAAAA,CAAW,iDAAiD,EAAET,wBAAAA,CAAyB,UAAU,CAAC,CAAA;QAEhJ,OAAOA,wBAAAA;AACT,IAAA;IAEA,OAAOS,UAAAA;AACT;;;;"}
@@ -1,6 +1,6 @@
1
- export * from './content-api-token';
2
- export type { AdminApiToken, AdminTokenBody } from './admin-token';
3
1
  import type { ContentApiApiToken, ContentApiApiTokenBody } from './content-api-token';
4
2
  import type { AdminApiToken, AdminTokenBody } from './admin-token';
3
+ export * from './content-api-token';
4
+ export type { AdminApiToken, AdminTokenBody } from './admin-token';
5
5
  export type ApiToken = ContentApiApiToken | AdminApiToken;
6
6
  export type ApiTokenBody = ContentApiApiTokenBody | AdminTokenBody;
@@ -1 +1 @@
1
- {"version":3,"file":"api-token.d.ts","sourceRoot":"","sources":["../../../shared/contracts/api-token.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,MAAM,MAAM,QAAQ,GAAG,kBAAkB,GAAG,aAAa,CAAC;AAC1D,MAAM,MAAM,YAAY,GAAG,sBAAsB,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"api-token.d.ts","sourceRoot":"","sources":["../../../shared/contracts/api-token.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,cAAc,qBAAqB,CAAC;AACpC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,MAAM,MAAM,QAAQ,GAAG,kBAAkB,GAAG,aAAa,CAAC;AAC1D,MAAM,MAAM,YAAY,GAAG,sBAAsB,GAAG,cAAc,CAAC"}
@@ -40,4 +40,22 @@ declare namespace Get {
40
40
  error?: errors.ApplicationError;
41
41
  };
42
42
  }
43
- export { AuditLog, GetAll, Get };
43
+ declare namespace GetUsers {
44
+ interface Request {
45
+ body: {};
46
+ query: {
47
+ page?: number;
48
+ pageSize?: number;
49
+ };
50
+ }
51
+ type Response = {
52
+ pagination: Pagination;
53
+ results: Pick<SanitizedAdminUserForAuditLogs, 'id' | 'email' | 'displayName'>[];
54
+ error?: never;
55
+ } | {
56
+ pagination?: never;
57
+ results?: never;
58
+ error?: errors.ApplicationError;
59
+ };
60
+ }
61
+ export { AuditLog, GetAll, Get, GetUsers };
@@ -1 +1 @@
1
- {"version":3,"file":"audit-logs.d.ts","sourceRoot":"","sources":["../../../shared/contracts/audit-logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGlE,MAAM,WAAW,8BAA+B,SAAQ,kBAAkB;IACxE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,QAAS,SAAQ,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,8BAA8B,CAAC;CACvC;AAED,kBAAU,MAAM,CAAC;IACf,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,CAAC;KACX;IAED,KAAY,QAAQ,GAChB;QACE,UAAU,EAAE,UAAU,CAAC;QACvB,OAAO,EAAE,QAAQ,EAAE,CAAC;QACpB,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,GACD;QACE,UAAU,CAAC,EAAE,KAAK,CAAC;QACnB,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC,CAAC;CACP;AAED,kBAAU,GAAG,CAAC;IACZ,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,MAAM;QACrB,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;KAClB;IAED,KAAY,QAAQ,GAChB,QAAQ,GACR;QACE,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC,CAAC;CACP;AAED,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"audit-logs.d.ts","sourceRoot":"","sources":["../../../shared/contracts/audit-logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGlE,MAAM,WAAW,8BAA+B,SAAQ,kBAAkB;IACxE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,QAAS,SAAQ,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,8BAA8B,CAAC;CACvC;AAED,kBAAU,MAAM,CAAC;IACf,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,CAAC;KACX;IAED,KAAY,QAAQ,GAChB;QACE,UAAU,EAAE,UAAU,CAAC;QACvB,OAAO,EAAE,QAAQ,EAAE,CAAC;QACpB,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,GACD;QACE,UAAU,CAAC,EAAE,KAAK,CAAC;QACnB,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC,CAAC;CACP;AAED,kBAAU,GAAG,CAAC;IACZ,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,MAAM;QACrB,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;KAClB;IAED,KAAY,QAAQ,GAChB,QAAQ,GACR;QACE,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC,CAAC;CACP;AAED,kBAAU,QAAQ,CAAC;IACjB,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE;YACL,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;KACH;IAED,KAAY,QAAQ,GAChB;QACE,UAAU,EAAE,UAAU,CAAC;QACvB,OAAO,EAAE,IAAI,CAAC,8BAA8B,EAAE,IAAI,GAAG,OAAO,GAAG,aAAa,CAAC,EAAE,CAAC;QAChF,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,GACD;QACE,UAAU,CAAC,EAAE,KAAK,CAAC;QACnB,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC,CAAC;CACP;AAED,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { AdminUser, SanitizedAdminUser } from './shared';
2
1
  import type { errors } from '@strapi/utils';
2
+ import type { AdminUser, SanitizedAdminUser } from './shared';
3
3
  /**
4
4
  * /login - Log in as an admin user
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../../shared/contracts/authentication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../../shared/contracts/authentication.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,8 @@ export interface RecentDocument {
8
8
  locale: string | null;
9
9
  status?: 'draft' | 'published' | 'modified';
10
10
  title: string;
11
- updatedAt: Date;
12
- publishedAt?: Date | null;
11
+ updatedAt: string;
12
+ publishedAt?: string | null;
13
13
  }
14
14
  export declare namespace GetRecentDocuments {
15
15
  interface Request {
@@ -1 +1 @@
1
- {"version":3,"file":"homepage.d.ts","sourceRoot":"","sources":["../../../shared/contracts/homepage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC;IAC7B,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC;IAChC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,WAAW,kBAAkB,CAAC;IAC1C,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE;YACL,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC;SAC9B,CAAC;KACH;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AAED,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;KACV;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM,CAAC;YACf,YAAY,EAAE,MAAM,CAAC;YACrB,UAAU,EAAE,MAAM,CAAC;YACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,MAAM,EAAE,MAAM,CAAC;YACf,QAAQ,EAAE,MAAM,CAAC;YACjB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AAED,MAAM,CAAC,OAAO,WAAW,iBAAiB,CAAC;IACzC,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;KACV;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAC;YACd,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,KAAY,SAAS,GAAG,MAAM,CAAC;IAC/B,KAAY,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAEnC,UAAiB,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,KAAK,CAAC;YACb,GAAG,EAAE,SAAS,CAAC;YACf,KAAK,EAAE,KAAK,CAAC;SACd,CAAC,CAAC;QACH,SAAS,EAAE,MAAM,CAAC;KACnB;IAED,UAAiB,WAAW;QAC1B,OAAO,EAAE,KAAK,CAAC;YACb,GAAG,EAAE,SAAS,CAAC;YACf,KAAK,EAAE,KAAK,CAAC;SACd,CAAC,CAAC;KACJ;CACF;AAED,MAAM,CAAC,OAAO,WAAW,iBAAiB,CAAC;IACzC,UAAiB,QAAQ;QACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;KACvB;CACF;AAED,MAAM,CAAC,OAAO,WAAW,oBAAoB,CAAC;IAC5C,UAAiB,OAAO;QACtB,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;KAC5B;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;KACvB;CACF"}
1
+ {"version":3,"file":"homepage.d.ts","sourceRoot":"","sources":["../../../shared/contracts/homepage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC;IAC7B,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC;IAChC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,CAAC,OAAO,WAAW,kBAAkB,CAAC;IAC1C,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE;YACL,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC;SAC9B,CAAC;KACH;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AAED,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;KACV;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM,CAAC;YACf,YAAY,EAAE,MAAM,CAAC;YACrB,UAAU,EAAE,MAAM,CAAC;YACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,MAAM,EAAE,MAAM,CAAC;YACf,QAAQ,EAAE,MAAM,CAAC;YACjB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AAED,MAAM,CAAC,OAAO,WAAW,iBAAiB,CAAC;IACzC,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;KACV;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAC;YACd,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,KAAY,SAAS,GAAG,MAAM,CAAC;IAC/B,KAAY,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAEnC,UAAiB,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,KAAK,CAAC;YACb,GAAG,EAAE,SAAS,CAAC;YACf,KAAK,EAAE,KAAK,CAAC;SACd,CAAC,CAAC;QACH,SAAS,EAAE,MAAM,CAAC;KACnB;IAED,UAAiB,WAAW;QAC1B,OAAO,EAAE,KAAK,CAAC;YACb,GAAG,EAAE,SAAS,CAAC;YACf,KAAK,EAAE,KAAK,CAAC;SACd,CAAC,CAAC;KACJ;CACF;AAED,MAAM,CAAC,OAAO,WAAW,iBAAiB,CAAC;IACzC,UAAiB,QAAQ;QACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;KACvB;CACF;AAED,MAAM,CAAC,OAAO,WAAW,oBAAoB,CAAC;IAC5C,UAAiB,OAAO;QACtB,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;KAC5B;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;KACvB;CACF"}
@@ -1,6 +1,6 @@
1
1
  import { errors } from '@strapi/utils';
2
- import type { AdminUserCreationPayload, AdminUserUpdatePayload, Pagination, SanitizedAdminUser } from './shared';
3
2
  import type { Data, Modules } from '@strapi/types';
3
+ import type { AdminUserCreationPayload, AdminUserUpdatePayload, Pagination, SanitizedAdminUser } from './shared';
4
4
  /**
5
5
  * /create - Create an admin user
6
6
  */
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../shared/contracts/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,KAAK,EACV,wBAAwB,EACxB,sBAAsB,EACtB,UAAU,EACV,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAEnD;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,UAAiB,OAAO;QACtB,IAAI,EAAE,wBAAwB,CAAC;QAC/B,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,kBAAkB,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC;KAC7D;CACF;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,UAAiB,OAAO;QACtB,IAAI,EAAE,wBAAwB,CAAC;QAC/B,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,kBAAkB,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC;KAC7D;CACF;AAED;;GAEG;AAEH,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAE/B,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,IAAI,CAAC,GAAG;YAC1E,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;SACpB,CAAC;KACH;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE;YACJ,OAAO,EAAE,kBAAkB,EAAE,CAAC;YAC9B,UAAU,EAAE,UAAU,CAAC;SACxB,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AACD;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,MAAM;QACrB,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;KACb;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,kBAAkB,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AACD;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,UAAiB,OAAO;QACtB,IAAI,EAAE,sBAAsB,CAAC;QAC7B,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,MAAM;QACrB,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;KACb;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,kBAAkB,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC;KAC7D;CACF;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,SAAS,CAAC;IACjC,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,MAAM;QACrB,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;KACb;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,kBAAkB,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,UAAiB,OAAO;QACtB,IAAI,EAAE;YACJ,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;SAChB,CAAC;QACF,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE,kBAAkB,EAAE,CAAC;QAC3B,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC;KAC7D;CACF"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../shared/contracts/user.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth-cookie-domain.d.ts","sourceRoot":"","sources":["../../../shared/utils/auth-cookie-domain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,0BAA0B,WAAY,CAAC;AAQpD,eAAO,MAAM,uBAAuB,GAClC,mBAAmB,MAAM,EACzB,OAAM,CAAC,OAAO,EAAE,MAAM,KAAK,IAAmB,KAC7C,MAAM,GAAG,SAeX,CAAC"}
1
+ {"version":3,"file":"auth-cookie-domain.d.ts","sourceRoot":"","sources":["../../../shared/utils/auth-cookie-domain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,0BAA0B,WAAY,CAAC;AASpD,eAAO,MAAM,uBAAuB,GAClC,mBAAmB,MAAM,EACzB,OAAM,CAAC,OAAO,EAAE,MAAM,KAAK,IAAmB,KAC7C,MAAM,GAAG,SAeX,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth-cookie-path.d.ts","sourceRoot":"","sources":["../../../shared/utils/auth-cookie-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,wBAAwB,WAAW,CAAC;AAWjD,eAAO,MAAM,qBAAqB,GAChC,iBAAiB,MAAM,EACvB,OAAM,CAAC,OAAO,EAAE,MAAM,KAAK,IAAmB,KAC7C,MAeF,CAAC"}
1
+ {"version":3,"file":"auth-cookie-path.d.ts","sourceRoot":"","sources":["../../../shared/utils/auth-cookie-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,wBAAwB,WAAW,CAAC;AAYjD,eAAO,MAAM,qBAAqB,GAChC,iBAAiB,MAAM,EACvB,OAAM,CAAC,OAAO,EAAE,MAAM,KAAK,IAAmB,KAC7C,MAeF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/admin",
3
- "version": "5.51.0",
3
+ "version": "5.51.1",
4
4
  "description": "Strapi Admin",
5
5
  "homepage": "https://strapi.io",
6
6
  "bugs": {
@@ -87,14 +87,14 @@
87
87
  "@casl/ability": "6.7.5",
88
88
  "@internationalized/date": "3.12.1",
89
89
  "@radix-ui/react-context": "1.0.1",
90
- "@radix-ui/react-toolbar": "1.0.4",
90
+ "@radix-ui/react-toolbar": "1.1.11",
91
91
  "@reduxjs/toolkit": "1.9.7",
92
92
  "@strapi/design-system": "2.2.3",
93
93
  "@strapi/icons": "2.2.3",
94
- "@strapi/permissions": "5.51.0",
95
- "@strapi/types": "5.51.0",
96
- "@strapi/typescript-utils": "5.51.0",
97
- "@strapi/utils": "5.51.0",
94
+ "@strapi/permissions": "5.51.1",
95
+ "@strapi/types": "5.51.1",
96
+ "@strapi/typescript-utils": "5.51.1",
97
+ "@strapi/utils": "5.51.1",
98
98
  "@testing-library/dom": "10.4.1",
99
99
  "@testing-library/react": "16.3.2",
100
100
  "@testing-library/user-event": "14.6.1",
@@ -143,13 +143,13 @@
143
143
  "sift": "16.0.1",
144
144
  "sonner": "2.0.7",
145
145
  "typescript": "5.9.3",
146
- "use-context-selector": "1.4.1",
146
+ "use-context-selector": "1.4.4",
147
147
  "yup": "0.32.9",
148
148
  "zod": "3.25.76"
149
149
  },
150
150
  "devDependencies": {
151
- "@strapi/admin-test-utils": "5.51.0",
152
- "@strapi/data-transfer": "5.51.0",
151
+ "@strapi/admin-test-utils": "5.51.1",
152
+ "@strapi/data-transfer": "5.51.1",
153
153
  "@testing-library/jest-dom": "6.9.1",
154
154
  "@types/codemirror5": "npm:@types/codemirror@^5.60.15",
155
155
  "@types/fs-extra": "11.0.4",