@strapi/admin 4.5.0-beta.0 → 4.5.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 (264) hide show
  1. package/admin/src/StrapiApp.js +17 -6
  2. package/admin/src/assets/images/hot-air-balloon.png +0 -0
  3. package/admin/src/assets/images/icon_offline-cloud.svg +3 -3
  4. package/admin/src/assets/images/logo-strapi-2022.svg +7 -0
  5. package/admin/src/assets/images/upgrade-details.png +0 -0
  6. package/admin/src/content-manager/components/DynamicTable/CellContent/CellValue.js +1 -1
  7. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js +5 -4
  8. package/admin/src/content-manager/components/DynamicTable/CellContent/index.js +10 -0
  9. package/admin/src/content-manager/components/DynamicTable/index.js +21 -4
  10. package/admin/src/content-manager/components/DynamicZone/components/{AddComponentButton/index.js → AddComponentButton.js} +12 -6
  11. package/admin/src/content-manager/components/DynamicZone/components/{ComponentPicker/Category/ComponentCard/index.js → ComponentCard.js} +8 -19
  12. package/admin/src/content-manager/components/DynamicZone/components/{ComponentPicker/Category/index.js → ComponentCategory.js} +19 -18
  13. package/admin/src/content-manager/components/DynamicZone/components/{ComponentPicker/index.js → ComponentPicker.js} +36 -38
  14. package/admin/src/content-manager/components/DynamicZone/components/DynamicComponent.js +195 -0
  15. package/admin/src/content-manager/components/DynamicZone/components/{DzLabel/index.js → DynamicZoneLabel.js} +13 -5
  16. package/admin/src/content-manager/components/DynamicZone/index.js +35 -116
  17. package/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +103 -60
  18. package/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js +169 -162
  19. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js +70 -16
  20. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/findLeafByPathAndReplace.js +52 -0
  21. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/index.js +2 -0
  22. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/recursivelyFindPathsBasedOnCondition.js +72 -0
  23. package/admin/src/content-manager/components/FieldComponent/index.js +9 -2
  24. package/admin/src/content-manager/components/PreviewWysiwyg/index.js +1 -1
  25. package/admin/src/content-manager/components/RelationInput/RelationInput.js +80 -76
  26. package/admin/src/content-manager/components/RelationInputDataManager/RelationInputDataManager.js +95 -63
  27. package/admin/src/content-manager/components/RelationInputDataManager/utils/diffRelations.js +24 -0
  28. package/admin/src/content-manager/components/RelationInputDataManager/utils/index.js +2 -1
  29. package/admin/src/content-manager/components/RelationInputDataManager/utils/normalizeRelations.js +8 -29
  30. package/admin/src/content-manager/components/RelationInputDataManager/utils/normalizeSearchResults.js +8 -4
  31. package/admin/src/content-manager/components/RelationInputDataManager/utils/select.js +1 -0
  32. package/admin/src/content-manager/components/RepeatableComponent/index.js +4 -3
  33. package/admin/src/content-manager/hooks/__test__/usePrev.test.js +26 -0
  34. package/admin/src/content-manager/hooks/index.js +1 -0
  35. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js +19 -48
  36. package/admin/src/content-manager/hooks/usePrev.js +14 -0
  37. package/admin/src/content-manager/hooks/useRelation/useRelation.js +100 -7
  38. package/admin/src/content-manager/pages/App/reducer.js +3 -0
  39. package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +3 -3
  40. package/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +2 -2
  41. package/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js +1 -1
  42. package/admin/src/core/apis/CustomFields.js +0 -1
  43. package/admin/src/core/store/configureStore.js +17 -2
  44. package/admin/src/favicon.png +0 -0
  45. package/admin/src/hooks/useFetchMarketplacePlugins/index.js +2 -2
  46. package/admin/src/hooks/useFetchMarketplacePlugins/utils/api.js +4 -2
  47. package/admin/src/hooks/useFetchMarketplaceProviders/index.js +3 -3
  48. package/admin/src/hooks/useFetchMarketplaceProviders/utils/api.js +5 -3
  49. package/admin/src/index.js +1 -0
  50. package/admin/src/pages/App/index.js +1 -1
  51. package/admin/src/pages/HomePage/assets/corner-ornament.svg +48 -0
  52. package/admin/src/pages/HomePage/index.js +4 -3
  53. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/CardButton.js +110 -0
  54. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/InstallPluginButton.js +32 -21
  55. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/PackageStats.js +79 -0
  56. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/index.js +28 -11
  57. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/FilterSelect.js +42 -0
  58. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/FiltersPopover.js +96 -0
  59. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/index.js +107 -0
  60. package/admin/src/pages/MarketplacePage/components/NpmPackagesGrid/index.js +4 -0
  61. package/admin/src/pages/MarketplacePage/components/SortSelect/index.js +70 -0
  62. package/admin/src/pages/MarketplacePage/index.js +68 -8
  63. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormApiTokenContainer/index.js +5 -4
  64. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormBody/index.js +4 -3
  65. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormHead/index.js +6 -2
  66. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Regenerate/index.js +1 -1
  67. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +5 -4
  68. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/utils/schema.js +1 -1
  69. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/ActionRow/index.js +7 -38
  70. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/ActionRow/utils/options.js +31 -0
  71. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/index.js +32 -43
  72. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/Collapse/index.js +1 -1
  73. package/admin/src/pages/SettingsPage/pages/Roles/ListPage/components/RoleRow/index.js +3 -1
  74. package/admin/src/pages/SettingsPage/pages/Roles/ListPage/index.js +2 -1
  75. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/EventInput/index.js +2 -2
  76. package/admin/src/translations/ca.json +1 -1
  77. package/admin/src/translations/de.json +1 -1
  78. package/admin/src/translations/dk.json +1 -1
  79. package/admin/src/translations/en.json +21 -7
  80. package/admin/src/translations/es.json +1 -1
  81. package/admin/src/translations/fr.json +1 -1
  82. package/admin/src/translations/gu.json +1 -1
  83. package/admin/src/translations/he.json +1 -1
  84. package/admin/src/translations/hi.json +1 -1
  85. package/admin/src/translations/hu.json +1 -1
  86. package/admin/src/translations/id.json +1 -1
  87. package/admin/src/translations/it.json +1 -1
  88. package/admin/src/translations/ja.json +1 -1
  89. package/admin/src/translations/ko.json +1 -1
  90. package/admin/src/translations/ml.json +1 -1
  91. package/admin/src/translations/nl.json +1 -1
  92. package/admin/src/translations/no.json +1 -1
  93. package/admin/src/translations/pl.json +1 -1
  94. package/admin/src/translations/pt-BR.json +15 -15
  95. package/admin/src/translations/ru.json +1 -1
  96. package/admin/src/translations/sa.json +1 -1
  97. package/admin/src/translations/sk.json +1 -1
  98. package/admin/src/translations/sv.json +118 -86
  99. package/admin/src/translations/th.json +1 -1
  100. package/admin/src/translations/zh-Hans.json +1 -1
  101. package/admin/src/translations/zh.json +1 -1
  102. package/build/1856.db9f5782.chunk.js +174 -0
  103. package/build/2077.fed8c9c3.chunk.js +206 -0
  104. package/build/2912.fccb2c43.chunk.js +259 -0
  105. package/build/4318.5e670740.chunk.js +30 -0
  106. package/build/{9166.8fcb3019.chunk.js → 4610.7614b003.chunk.js} +22 -21
  107. package/build/4715.8e33d630.chunk.js +387 -0
  108. package/build/{4800.d09f1225.chunk.js → 4800.a6935af6.chunk.js} +1 -1
  109. package/build/4982.9e58ea3f.chunk.js +325 -0
  110. package/build/617f9c948fa79e6d73bd.png +0 -0
  111. package/build/6925.bb6dd64d.chunk.js +762 -0
  112. package/build/6d21938306785f176538.png +0 -0
  113. package/build/70674f63fc3904c20de0.svg +7 -0
  114. package/build/{7379.d246dd38.chunk.js → 7379.e972985f.chunk.js} +1 -1
  115. package/build/7692.31e83caa.chunk.js +470 -0
  116. package/build/7841.4804bd98.chunk.js +259 -0
  117. package/build/7866.6db2248d.chunk.js +505 -0
  118. package/build/7e9af4fb7e723fcebf1f.svg +48 -0
  119. package/build/8380.37126e0d.chunk.js +299 -0
  120. package/build/8549.5e5fb6b6.chunk.js +159 -0
  121. package/build/8738.5a02bffb.chunk.js +463 -0
  122. package/build/{9066.26faf397.chunk.js → 9066.5d980488.chunk.js} +5 -5
  123. package/build/9420.7addc099.chunk.js +505 -0
  124. package/build/9649.b6afc945.chunk.js +199 -0
  125. package/build/9d5d788027e86620c234.svg +5 -0
  126. package/build/Admin-authenticatedApp.c07d2a86.chunk.js +80 -0
  127. package/build/{Admin_homePage.4b2be829.chunk.js → Admin_homePage.26d32e30.chunk.js} +5 -4
  128. package/build/Admin_marketplace.444ff7b8.chunk.js +22 -0
  129. package/build/Admin_settingsPage.bf2234e1.chunk.js +178 -0
  130. package/build/admin-app.b157c10a.chunk.js +112 -0
  131. package/build/{admin-edit-roles-page.4dd6bcb9.chunk.js → admin-edit-roles-page.69d9fcb2.chunk.js} +1 -1
  132. package/build/ca-json.07ae0f2c.chunk.js +1 -0
  133. package/build/content-manager.f38edbb6.chunk.js +1202 -0
  134. package/build/content-type-builder-translation-pt-BR-json.6fe3b8d1.chunk.js +1 -0
  135. package/build/content-type-builder-translation-sv-json.6deff030.chunk.js +1 -0
  136. package/build/{content-type-builder.a6e29716.chunk.js → content-type-builder.16af63a6.chunk.js} +13 -13
  137. package/build/de-json.6b3e1894.chunk.js +1 -0
  138. package/build/dk-json.144c6a8e.chunk.js +1 -0
  139. package/build/{email-settings-page.bfe6227f.chunk.js → email-settings-page.91c925a5.chunk.js} +6 -6
  140. package/build/email-translation-en-json.ebad8943.chunk.js +1 -0
  141. package/build/en-json.4a269f6b.chunk.js +1 -0
  142. package/build/es-json.6d123a82.chunk.js +1 -0
  143. package/build/fr-json.28ab54cb.chunk.js +1 -0
  144. package/build/gu-json.9a50ea64.chunk.js +1 -0
  145. package/build/he-json.72f18790.chunk.js +1 -0
  146. package/build/hi-json.0301b7ba.chunk.js +1 -0
  147. package/build/hu-json.c4b641bb.chunk.js +1 -0
  148. package/build/{i18n-settings-page.18166125.chunk.js → i18n-settings-page.4ef64441.chunk.js} +5 -5
  149. package/build/id-json.86035797.chunk.js +1 -0
  150. package/build/index.html +1 -1
  151. package/build/it-json.bbdc8993.chunk.js +1 -0
  152. package/build/ja-json.1c9eeeec.chunk.js +1 -0
  153. package/build/ko-json.e1f66398.chunk.js +1 -0
  154. package/build/main.ca8b0ee3.js +9465 -0
  155. package/build/ml-json.963c889f.chunk.js +1 -0
  156. package/build/nl-json.2b8cc3a0.chunk.js +1 -0
  157. package/build/no-json.a58c28bd.chunk.js +1 -0
  158. package/build/pl-json.249626b3.chunk.js +1 -0
  159. package/build/pt-BR-json.2b72b1d6.chunk.js +1 -0
  160. package/build/ru-json.d7cfc2ff.chunk.js +1 -0
  161. package/build/runtime~main.ede9da1e.js +2 -0
  162. package/build/sa-json.44e95991.chunk.js +1 -0
  163. package/build/sk-json.7ba4b330.chunk.js +1 -0
  164. package/build/sv-json.fb1081ff.chunk.js +1 -0
  165. package/build/th-json.a67309b1.chunk.js +1 -0
  166. package/build/{upload-settings.3d613216.chunk.js → upload-settings.3f7ad973.chunk.js} +5 -5
  167. package/build/{users-advanced-settings-page.f4051d92.chunk.js → users-advanced-settings-page.6a838320.chunk.js} +5 -5
  168. package/build/users-permissions-translation-sv-json.d5d11648.chunk.js +1 -0
  169. package/build/{webhook-edit-page.9e46fc3f.chunk.js → webhook-edit-page.dc9442ce.chunk.js} +1 -1
  170. package/build/webhook-list-page.a110c462.chunk.js +134 -0
  171. package/build/zh-Hans-json.21617c24.chunk.js +1 -0
  172. package/build/zh-json.608aaf24.chunk.js +1 -0
  173. package/ee/admin/pages/SettingsPage/pages/Roles/ListPage/index.js +3 -2
  174. package/env.js +1 -0
  175. package/package.json +18 -17
  176. package/scripts/build.js +11 -0
  177. package/server/content-types/api-token.js +1 -1
  178. package/utils/create-plugins-exclude-path.js +40 -0
  179. package/webpack.alias.js +0 -13
  180. package/webpack.config.js +4 -1
  181. package/admin/src/assets/images/banner_strapi-rocket.png +0 -0
  182. package/admin/src/assets/images/big-logo-home.png +0 -0
  183. package/admin/src/assets/images/homepage-logo.png +0 -0
  184. package/admin/src/assets/images/icon_made-by-strapi.svg +0 -5
  185. package/admin/src/assets/images/logo_strapi_auth.png +0 -0
  186. package/admin/src/assets/images/logo_strapi_auth_v4.png +0 -0
  187. package/admin/src/assets/images/logo_strapi_menu.png +0 -0
  188. package/admin/src/assets/images/oops.png +0 -0
  189. package/admin/src/content-manager/components/DynamicZone/components/Component/Rectangle.js +0 -19
  190. package/admin/src/content-manager/components/DynamicZone/components/Component/index.js +0 -191
  191. package/admin/src/content-manager/components/State/index.js +0 -37
  192. package/admin/src/content-manager/icons/Bold/index.js +0 -22
  193. package/admin/src/content-manager/icons/Code/index.js +0 -13
  194. package/admin/src/content-manager/icons/Cross/index.js +0 -28
  195. package/admin/src/content-manager/icons/Italic/index.js +0 -23
  196. package/admin/src/content-manager/icons/Link/index.js +0 -21
  197. package/admin/src/content-manager/icons/Media/index.js +0 -14
  198. package/admin/src/content-manager/icons/Na/index.js +0 -39
  199. package/admin/src/content-manager/icons/Ol/index.js +0 -13
  200. package/admin/src/content-manager/icons/Quote/index.js +0 -13
  201. package/admin/src/content-manager/icons/Striked/index.js +0 -24
  202. package/admin/src/content-manager/icons/Ul/index.js +0 -15
  203. package/admin/src/content-manager/icons/Underline/index.js +0 -22
  204. package/admin/src/favicon.ico +0 -0
  205. package/build/15026a3d58aeb2828134.png +0 -0
  206. package/build/1856.d8f13391.chunk.js +0 -173
  207. package/build/1939.e3c87653.chunk.js +0 -325
  208. package/build/2077.31a2d91e.chunk.js +0 -205
  209. package/build/2912.ab68a736.chunk.js +0 -258
  210. package/build/4318.7d167b58.chunk.js +0 -30
  211. package/build/4715.44b1ef9b.chunk.js +0 -386
  212. package/build/4982.c2a311b7.chunk.js +0 -324
  213. package/build/6925.f5c8b6fc.chunk.js +0 -761
  214. package/build/7841.4b67af3f.chunk.js +0 -258
  215. package/build/7866.5fbeb7e5.chunk.js +0 -504
  216. package/build/8380.9b53a31d.chunk.js +0 -284
  217. package/build/8549.cf10b5d1.chunk.js +0 -158
  218. package/build/8738.a30a2160.chunk.js +0 -461
  219. package/build/90f49a385afb000fb1d4.svg +0 -5
  220. package/build/9420.0fe11290.chunk.js +0 -504
  221. package/build/962.8651ba3f.chunk.js +0 -184
  222. package/build/Admin-authenticatedApp.883449a5.chunk.js +0 -80
  223. package/build/Admin_marketplace.82c0570b.chunk.js +0 -11
  224. package/build/Admin_settingsPage.98e2a62b.chunk.js +0 -178
  225. package/build/a6b842e0b6d2b61135d1.svg +0 -5
  226. package/build/admin-app.a61d5c2e.chunk.js +0 -112
  227. package/build/b997a22a2e0b87ef1fa2.ico +0 -0
  228. package/build/bd81ba6c07827282255d.png +0 -0
  229. package/build/c3de6118ef47086ad05c.png +0 -0
  230. package/build/ca-json.82df6eab.chunk.js +0 -1
  231. package/build/content-manager.933dc286.chunk.js +0 -1201
  232. package/build/content-type-builder-translation-pt-BR-json.d6c7fcc1.chunk.js +0 -1
  233. package/build/de-json.0ad554eb.chunk.js +0 -1
  234. package/build/dk-json.e195ea1a.chunk.js +0 -1
  235. package/build/email-translation-en-json.3d74ff95.chunk.js +0 -1
  236. package/build/en-json.1889403c.chunk.js +0 -1
  237. package/build/es-json.09f80f6e.chunk.js +0 -1
  238. package/build/fb376b132d18bf4522ca.png +0 -0
  239. package/build/fde9b1ad0670d29a2516.png +0 -0
  240. package/build/fr-json.606d056b.chunk.js +0 -1
  241. package/build/gu-json.9881264f.chunk.js +0 -1
  242. package/build/he-json.3b825d80.chunk.js +0 -1
  243. package/build/hi-json.83dcf48f.chunk.js +0 -1
  244. package/build/hu-json.6f328bce.chunk.js +0 -1
  245. package/build/id-json.1f3c4303.chunk.js +0 -1
  246. package/build/it-json.494ac432.chunk.js +0 -1
  247. package/build/ja-json.6f262117.chunk.js +0 -1
  248. package/build/ko-json.36dc3b9a.chunk.js +0 -1
  249. package/build/main.63e7ea0a.js +0 -9338
  250. package/build/ml-json.9566bf9a.chunk.js +0 -1
  251. package/build/nl-json.94c3a289.chunk.js +0 -1
  252. package/build/no-json.40386397.chunk.js +0 -1
  253. package/build/pl-json.ccc6ef23.chunk.js +0 -1
  254. package/build/pt-BR-json.744f024d.chunk.js +0 -1
  255. package/build/ru-json.d22ea13c.chunk.js +0 -1
  256. package/build/runtime~main.3a5e1b07.js +0 -2
  257. package/build/sa-json.8fb1c04d.chunk.js +0 -1
  258. package/build/sk-json.6c7335d4.chunk.js +0 -1
  259. package/build/sv-json.2e589a7d.chunk.js +0 -1
  260. package/build/th-json.72e8de3d.chunk.js +0 -1
  261. package/build/users-permissions-translation-sv-json.83c60841.chunk.js +0 -1
  262. package/build/webhook-list-page.a712ae40.chunk.js +0 -134
  263. package/build/zh-Hans-json.a4d7dc69.chunk.js +0 -1
  264. package/build/zh-json.66aa2ae1.chunk.js +0 -1
package/scripts/build.js CHANGED
@@ -41,6 +41,17 @@ const buildAdmin = async () => {
41
41
  options: {
42
42
  backend: 'http://localhost:1337',
43
43
  adminPath: '/admin/',
44
+
45
+ /**
46
+ * Ideally this would take more scenarios into account, such
47
+ * as the `telemetryDisabled` property in the package.json
48
+ * of the users project. For builds based on an app we are
49
+ * passing this information throgh, but here we do not have access
50
+ * to the app's package.json. By using at least an environment variable
51
+ * we can make sure developers can actually test this functionality.
52
+ */
53
+
54
+ telemetryDisabled: process.env.STRAPI_TELEMETRY_DISABLED === 'true' ?? false,
44
55
  },
45
56
  tsConfigFilePath,
46
57
  };
@@ -67,7 +67,7 @@ module.exports = {
67
67
  required: false,
68
68
  },
69
69
  lifespan: {
70
- type: 'integer',
70
+ type: 'biginteger',
71
71
  configurable: false,
72
72
  required: false,
73
73
  },
@@ -0,0 +1,40 @@
1
+ 'use strict';
2
+
3
+ const { sep, join } = require('path');
4
+
5
+ const NODE_MODULES = 'node_modules';
6
+ /**
7
+ * @param {string[]} pluginsPath – an array of paths to the plugins from the user's directory
8
+ * @returns {RegExp} a regex that will exclude _all_ node_modules except for the plugins in the pluginsPath array.
9
+ */
10
+ const createPluginsExcludePath = (pluginsPath = []) => {
11
+ /**
12
+ * converts the full path to just the plugin path
13
+ * e.g. `/Users/username/strapi/node_modules/@scope/plugin-name`
14
+ * to `@scope/plugin-name`
15
+ */
16
+ const tsxPlugins = pluginsPath.reduce((acc, curr) => {
17
+ const dirPaths = curr.split(sep);
18
+
19
+ const nodeModulePathIndex = dirPaths.findIndex((val) => val === NODE_MODULES);
20
+
21
+ if (nodeModulePathIndex > 0) {
22
+ const pluginNodeModulePath = dirPaths.slice(nodeModulePathIndex + 1);
23
+ return [...acc, join(...pluginNodeModulePath)];
24
+ }
25
+
26
+ return acc;
27
+ }, []);
28
+
29
+ /**
30
+ * If there aren't any plugins in the node_modules array, just return the node_modules regex
31
+ * without complicating it.
32
+ */
33
+ if (tsxPlugins.length === 0) {
34
+ return /node_modules/;
35
+ }
36
+
37
+ return new RegExp(`${NODE_MODULES}/(?!(${tsxPlugins.join('|')}))`);
38
+ };
39
+
40
+ module.exports = createPluginsExcludePath;
package/webpack.alias.js CHANGED
@@ -37,21 +37,8 @@ const aliasExactMatch = [
37
37
  'yup',
38
38
  ];
39
39
 
40
- const alias = [
41
- 'react-select/animated',
42
- 'react-select/async',
43
- 'react-select/async-creatable',
44
- 'react-select/base',
45
- 'react-select/creatable',
46
- ];
47
-
48
40
  // See https://webpack.js.org/configuration/resolve/
49
41
  module.exports = {
50
- ...alias.reduce((acc, name) => {
51
- acc[name] = require.resolve(name);
52
- return acc;
53
- }, {}),
54
-
55
42
  ...aliasExactMatch.reduce((acc, name) => {
56
43
  acc[`${name}$`] = require.resolve(name);
57
44
  return acc;
package/webpack.config.js CHANGED
@@ -13,6 +13,7 @@ const ReactRefreshWebpackPlugin = require('@pmmmwh/react-refresh-webpack-plugin'
13
13
 
14
14
  const alias = require('./webpack.alias');
15
15
  const getClientEnvironment = require('./env');
16
+ const createPluginsExcludePath = require('./utils/create-plugins-exclude-path');
16
17
 
17
18
  const EE_REGEX = /from.* ['"]ee_else_ce\//;
18
19
 
@@ -49,6 +50,8 @@ module.exports = ({
49
50
  ]
50
51
  : [];
51
52
 
53
+ const excludeRegex = createPluginsExcludePath(pluginsPath);
54
+
52
55
  return {
53
56
  mode: isProduction ? 'production' : 'development',
54
57
  bail: !!isProduction,
@@ -82,7 +85,7 @@ module.exports = ({
82
85
  test: /\.tsx?$/,
83
86
  loader: require.resolve('esbuild-loader'),
84
87
  include: [cacheDir, ...pluginsPath],
85
- exclude: /node_modules/,
88
+ exclude: excludeRegex,
86
89
  options: {
87
90
  loader: 'tsx',
88
91
  target: 'es2015',
@@ -1,5 +0,0 @@
1
- <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect x="3" y="3" width="18" height="18" rx="4" fill="#4945FF"/>
3
- <path fill-rule="evenodd" clip-rule="evenodd" d="M15.8075 7.625H9.03058V11.1792H12.2533C12.4977 11.1792 12.6958 11.3773 12.6958 11.6216V14.8444H16.25V8.06746C16.25 7.82309 16.0519 7.625 15.8075 7.625Z" fill="white"/>
4
- <path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M9.0308 7.625V11.1792H6.01073C5.81364 11.1792 5.71494 10.9409 5.8543 10.8015L9.0308 7.625ZM13.0735 18.0209C12.9342 18.1603 12.6959 18.0616 12.6959 17.8645V14.8444H16.25L13.0735 18.0209ZM12.4746 11.1792H9.03058V14.4019C9.03058 14.6463 9.22868 14.8444 9.47304 14.8444H12.6958V11.4004C12.6958 11.2782 12.5968 11.1792 12.4746 11.1792Z" fill="#DAD9FF"/>
5
- </svg>
Binary file
@@ -1,19 +0,0 @@
1
- import React from 'react';
2
- import styled from 'styled-components';
3
- import { Box } from '@strapi/design-system/Box';
4
- import { Flex } from '@strapi/design-system/Flex';
5
-
6
- const StyledBox = styled(Box)`
7
- width: ${({ theme }) => theme.spaces[2]};
8
- height: ${({ theme }) => theme.spaces[4]};
9
- `;
10
-
11
- const Rectangle = () => {
12
- return (
13
- <Flex justifyContent="center">
14
- <StyledBox background="neutral200" />
15
- </Flex>
16
- );
17
- };
18
-
19
- export default Rectangle;
@@ -1,191 +0,0 @@
1
- import React, { memo, Suspense, useMemo } from 'react';
2
- import PropTypes from 'prop-types';
3
- import styled from 'styled-components';
4
- import isEqual from 'react-fast-compare';
5
- import { useIntl } from 'react-intl';
6
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
7
- import { Accordion, AccordionToggle, AccordionContent } from '@strapi/design-system/Accordion';
8
- import { IconButton } from '@strapi/design-system/IconButton';
9
- import { FocusTrap } from '@strapi/design-system/FocusTrap';
10
- import { Box } from '@strapi/design-system/Box';
11
- import { Flex } from '@strapi/design-system/Flex';
12
- import { Stack } from '@strapi/design-system/Stack';
13
- import { Loader } from '@strapi/design-system/Loader';
14
- import Trash from '@strapi/icons/Trash';
15
- import ArrowDown from '@strapi/icons/ArrowDown';
16
- import ArrowUp from '@strapi/icons/ArrowUp';
17
- import { useContentTypeLayout } from '../../../../hooks';
18
- import { getTrad } from '../../../../utils';
19
- import FieldComponent from '../../../FieldComponent';
20
- import Rectangle from './Rectangle';
21
-
22
- const ActionStack = styled(Stack)`
23
- svg {
24
- path {
25
- fill: ${({ theme, expanded }) =>
26
- expanded ? theme.colors.primary600 : theme.colors.neutral600};
27
- }
28
- }
29
- `;
30
-
31
- const IconButtonCustom = styled(IconButton)`
32
- background-color: transparent;
33
- `;
34
-
35
- const StyledBox = styled(Box)`
36
- > div:first-child {
37
- box-shadow: ${({ theme }) => theme.shadows.tableShadow};
38
- }
39
- `;
40
-
41
- const AccordionContentRadius = styled(Box)`
42
- border-radius: 0 0 ${({ theme }) => theme.spaces[1]} ${({ theme }) => theme.spaces[1]};
43
- `;
44
-
45
- const Component = ({
46
- componentUid,
47
- formErrors,
48
- index,
49
- isOpen,
50
- isFieldAllowed,
51
- moveComponentDown,
52
- moveComponentUp,
53
- name,
54
- onToggle,
55
- removeComponentFromDynamicZone,
56
- showDownIcon,
57
- showUpIcon,
58
- }) => {
59
- const { formatMessage } = useIntl();
60
- const { getComponentLayout } = useContentTypeLayout();
61
- const { icon, friendlyName } = useMemo(() => {
62
- const {
63
- info: { icon, displayName },
64
- } = getComponentLayout(componentUid);
65
-
66
- return { friendlyName: displayName, icon };
67
- }, [componentUid, getComponentLayout]);
68
-
69
- const handleMoveComponentDown = () => moveComponentDown(name, index);
70
-
71
- const handleMoveComponentUp = () => moveComponentUp(name, index);
72
-
73
- const handleRemove = () => removeComponentFromDynamicZone(name, index);
74
-
75
- const downLabel = formatMessage({
76
- id: getTrad('components.DynamicZone.move-down-label'),
77
- defaultMessage: 'Move component down',
78
- });
79
- const upLabel = formatMessage({
80
- id: getTrad('components.DynamicZone.move-up-label'),
81
- defaultMessage: 'Move component down',
82
- });
83
- const deleteLabel = formatMessage(
84
- {
85
- id: getTrad('components.DynamicZone.delete-label'),
86
- defaultMessage: 'Delete {name}',
87
- },
88
- { name: friendlyName }
89
- );
90
-
91
- const formErrorsKeys = Object.keys(formErrors);
92
-
93
- const fieldsErrors = formErrorsKeys.filter((errorKey) => {
94
- const errorKeysArray = errorKey.split('.');
95
-
96
- if (`${errorKeysArray[0]}.${errorKeysArray[1]}` === `${name}.${index}`) {
97
- return true;
98
- }
99
-
100
- return false;
101
- });
102
-
103
- let errorMessage;
104
-
105
- if (fieldsErrors.length > 0) {
106
- errorMessage = formatMessage({
107
- id: getTrad('components.DynamicZone.error-message'),
108
- defaultMessage: 'The component contains error(s)',
109
- });
110
- }
111
-
112
- return (
113
- <Box>
114
- <Rectangle />
115
- <StyledBox hasRadius>
116
- <Accordion expanded={isOpen} onToggle={() => onToggle(index)} size="S" error={errorMessage}>
117
- <AccordionToggle
118
- startIcon={<FontAwesomeIcon icon={icon} />}
119
- action={
120
- <ActionStack horizontal spacing={0} expanded={isOpen}>
121
- {showDownIcon && (
122
- <IconButtonCustom
123
- noBorder
124
- label={downLabel}
125
- onClick={handleMoveComponentDown}
126
- icon={<ArrowDown />}
127
- />
128
- )}
129
- {showUpIcon && (
130
- <IconButtonCustom
131
- noBorder
132
- label={upLabel}
133
- onClick={handleMoveComponentUp}
134
- icon={<ArrowUp />}
135
- />
136
- )}
137
- {isFieldAllowed && (
138
- <IconButtonCustom
139
- noBorder
140
- label={deleteLabel}
141
- onClick={handleRemove}
142
- icon={<Trash />}
143
- />
144
- )}
145
- </ActionStack>
146
- }
147
- title={friendlyName}
148
- togglePosition="left"
149
- />
150
- <AccordionContent>
151
- <AccordionContentRadius background="neutral0">
152
- <Suspense
153
- fallback={
154
- <Flex justifyContent="center" paddingTop={4} paddingBottom={4}>
155
- <Loader>Loading content.</Loader>
156
- </Flex>
157
- }
158
- >
159
- <FocusTrap onEscape={() => onToggle(index)}>
160
- <FieldComponent
161
- componentUid={componentUid}
162
- icon={icon}
163
- name={`${name}.${index}`}
164
- isFromDynamicZone
165
- />
166
- </FocusTrap>
167
- </Suspense>
168
- </AccordionContentRadius>
169
- </AccordionContent>
170
- </Accordion>
171
- </StyledBox>
172
- </Box>
173
- );
174
- };
175
-
176
- Component.propTypes = {
177
- componentUid: PropTypes.string.isRequired,
178
- formErrors: PropTypes.object.isRequired,
179
- index: PropTypes.number.isRequired,
180
- isFieldAllowed: PropTypes.bool.isRequired,
181
- isOpen: PropTypes.bool.isRequired,
182
- moveComponentDown: PropTypes.func.isRequired,
183
- moveComponentUp: PropTypes.func.isRequired,
184
- name: PropTypes.string.isRequired,
185
- onToggle: PropTypes.func.isRequired,
186
- removeComponentFromDynamicZone: PropTypes.func.isRequired,
187
- showDownIcon: PropTypes.bool.isRequired,
188
- showUpIcon: PropTypes.bool.isRequired,
189
- };
190
-
191
- export default memo(Component, isEqual);
@@ -1,37 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { useIntl } from 'react-intl';
4
- import { Typography } from '@strapi/design-system/Typography';
5
- import { Box } from '@strapi/design-system/Box';
6
- import { getTrad } from '../../utils';
7
-
8
- const State = ({ isPublished }) => {
9
- const { formatMessage } = useIntl();
10
- const content = formatMessage({
11
- id: getTrad(`containers.List.${isPublished ? 'published' : 'draft'}`),
12
- });
13
- const background = isPublished ? 'success100' : 'secondary100';
14
- const textColor = isPublished ? 'success700' : 'secondary700';
15
-
16
- return (
17
- <Box
18
- background={background}
19
- hasRadius
20
- paddingTop={1}
21
- paddingBottom={1}
22
- paddingLeft={2}
23
- paddingRight={2}
24
- style={{ width: 'fit-content' }}
25
- >
26
- <Typography fontWeight="bold" textColor={textColor}>
27
- {content}
28
- </Typography>
29
- </Box>
30
- );
31
- };
32
-
33
- State.propTypes = {
34
- isPublished: PropTypes.bool.isRequired,
35
- };
36
-
37
- export default State;
@@ -1,22 +0,0 @@
1
- import React from 'react';
2
-
3
- const Bold = () => {
4
- return (
5
- <svg width="9" height="10" xmlns="http://www.w3.org/2000/svg">
6
- <text
7
- transform="translate(-12 -10)"
8
- fill="#333740"
9
- fillRule="evenodd"
10
- fontSize="13"
11
- fontFamily="Baskerville-SemiBold, Baskerville"
12
- fontWeight="500"
13
- >
14
- <tspan x="12" y="20">
15
- B
16
- </tspan>
17
- </text>
18
- </svg>
19
- );
20
- };
21
-
22
- export default Bold;
@@ -1,13 +0,0 @@
1
- import React from 'react';
2
-
3
- const Code = () => {
4
- return (
5
- <svg width="12" height="8" xmlns="http://www.w3.org/2000/svg">
6
- <g fill="#333740" fillRule="evenodd">
7
- <path d="M3.653 7.385a.632.632 0 0 1-.452-.191L.214 4.154a.66.66 0 0 1 0-.922L3.201.19a.632.632 0 0 1 .905 0 .66.66 0 0 1 0 .921l-2.534 2.58 2.534 2.58a.66.66 0 0 1 0 .922.632.632 0 0 1-.453.19zM8.347 7.385a.632.632 0 0 0 .452-.191l2.987-3.04a.66.66 0 0 0 0-.922L8.799.19a.632.632 0 0 0-.905 0 .66.66 0 0 0 0 .921l2.534 2.58-2.534 2.58a.66.66 0 0 0 0 .922c.125.127.289.19.453.19z" />
8
- </g>
9
- </svg>
10
- );
11
- };
12
-
13
- export default Code;
@@ -1,28 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
-
4
- const Cross = ({ fill, height, width, ...rest }) => {
5
- return (
6
- <svg {...rest} width={width} height={height} xmlns="http://www.w3.org/2000/svg">
7
- <path
8
- d="M7.78 6.72L5.06 4l2.72-2.72a.748.748 0 0 0 0-1.06.748.748 0 0 0-1.06 0L4 2.94 1.28.22a.748.748 0 0 0-1.06 0 .748.748 0 0 0 0 1.06L2.94 4 .22 6.72a.748.748 0 0 0 0 1.06.748.748 0 0 0 1.06 0L4 5.06l2.72 2.72a.748.748 0 0 0 1.06 0 .752.752 0 0 0 0-1.06z"
9
- fill={fill}
10
- fillRule="evenodd"
11
- />
12
- </svg>
13
- );
14
- };
15
-
16
- Cross.defaultProps = {
17
- fill: '#b3b5b9',
18
- height: '8',
19
- width: '8',
20
- };
21
-
22
- Cross.propTypes = {
23
- fill: PropTypes.string,
24
- height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
25
- width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
26
- };
27
-
28
- export default Cross;
@@ -1,23 +0,0 @@
1
- import React from 'react';
2
-
3
- const Italic = () => {
4
- return (
5
- <svg width="6" height="9" xmlns="http://www.w3.org/2000/svg">
6
- <text
7
- transform="translate(-13 -11)"
8
- fill="#333740"
9
- fillRule="evenodd"
10
- fontWeight="500"
11
- fontSize="13"
12
- fontFamily="Baskerville-SemiBoldItalic, Baskerville"
13
- fontStyle="italic"
14
- >
15
- <tspan x="13" y="20">
16
- I
17
- </tspan>
18
- </text>
19
- </svg>
20
- );
21
- };
22
-
23
- export default Italic;
@@ -1,21 +0,0 @@
1
- import React from 'react';
2
-
3
- const Link = () => {
4
- return (
5
- <svg width="12" height="6" xmlns="http://www.w3.org/2000/svg">
6
- <g fill="none" fillRule="evenodd">
7
- <path d="M6.063 1.5H6h.063z" fill="#000" />
8
- <path
9
- d="M9.516 0H8s.813.531.988 1.5h.528c.55 0 .984.434.984.984v1c0 .55-.434 1.016-.984 1.016h-3.5A1.03 1.03 0 0 1 5 3.484V2.5H3.5v.984A2.518 2.518 0 0 0 6.016 6h3.5C10.896 6 12 4.866 12 3.484v-1A2.473 2.473 0 0 0 9.516 0z"
10
- fill="#333740"
11
- />
12
- <path
13
- d="M8.3 1.5A2.473 2.473 0 0 0 6.016 0h-3.5C1.134 0 0 1.103 0 2.484v1A2.526 2.526 0 0 0 2.516 6H4s-.806-.531-1.003-1.5h-.481A1.03 1.03 0 0 1 1.5 3.484v-1c0-.55.466-.984 1.016-.984h3.5c.55 0 .984.434.984.984V3.5h1.5V2.484c0-.35-.072-.684-.2-.984z"
14
- fill="#333740"
15
- />
16
- </g>
17
- </svg>
18
- );
19
- };
20
-
21
- export default Link;
@@ -1,14 +0,0 @@
1
- import React from 'react';
2
-
3
- const Media = () => {
4
- return (
5
- <svg width="12" height="11" xmlns="http://www.w3.org/2000/svg">
6
- <g fill="#333740" fillRule="evenodd">
7
- <path d="M9 4.286a1.286 1.286 0 1 0 0-2.572 1.286 1.286 0 0 0 0 2.572z" />
8
- <path d="M11.25 0H.75C.332 0 0 .34 0 .758v8.77c0 .418.332.758.75.758h10.5c.418 0 .75-.34.75-.758V.758A.752.752 0 0 0 11.25 0zM8.488 5.296a.46.46 0 0 0-.342-.167c-.137 0-.234.065-.343.153l-.501.423c-.105.075-.188.126-.308.126a.443.443 0 0 1-.295-.11 3.5 3.5 0 0 1-.115-.11L5.143 4.054a.59.59 0 0 0-.897.008L.857 8.148V1.171a.353.353 0 0 1 .351-.314h9.581a.34.34 0 0 1 .346.322l.008 6.975-2.655-2.858z" />
9
- </g>
10
- </svg>
11
- );
12
- };
13
-
14
- export default Media;
@@ -1,39 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
-
4
- const Na = ({ fill, fontFamily, fontSize, fontWeight, height, textFill, width, ...rest }) => {
5
- return (
6
- <svg {...rest} width={width} height={height} xmlns="http://www.w3.org/2000/svg">
7
- <g fill="none" fillRule="evenodd">
8
- <rect fill={fill} width={width} height={height} rx="17.5" />
9
- <text fontFamily={fontFamily} fontSize={fontSize} fontWeight={fontWeight} fill={textFill}>
10
- <tspan x="6" y="22">
11
- N/A
12
- </tspan>
13
- </text>
14
- </g>
15
- </svg>
16
- );
17
- };
18
-
19
- Na.defaultProps = {
20
- fill: '#fafafb',
21
- fontFamily: 'Lato-Medium, Lato',
22
- fontSize: '12',
23
- fontWeight: '400',
24
- height: '35',
25
- textFill: '#838383',
26
- width: '35',
27
- };
28
-
29
- Na.propTypes = {
30
- fill: PropTypes.string,
31
- fontFamily: PropTypes.string,
32
- fontSize: PropTypes.string,
33
- fontWeight: PropTypes.string,
34
- height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
35
- textFill: PropTypes.string,
36
- width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
37
- };
38
-
39
- export default Na;
@@ -1,13 +0,0 @@
1
- import React from 'react';
2
-
3
- const Ol = () => {
4
- return (
5
- <svg width="12" height="8" xmlns="http://www.w3.org/2000/svg">
6
- <g fill="#333740" fillRule="evenodd">
7
- <path d="M2.4 3H.594v-.214h.137c.123 0 .212-.01.266-.032.053-.022.086-.052.1-.092a.67.67 0 0 0 .018-.188V.74a.46.46 0 0 0-.03-.194C1.064.504 1.021.476.955.46A1.437 1.437 0 0 0 .643.435H.539V.23c.332-.035.565-.067.7-.096.135-.03.258-.075.37-.134h.275v2.507c0 .104.023.177.07.218.047.04.14.061.278.061H2.4V3zM2.736 6.695l-.132.528h-.246a.261.261 0 0 0 .015-.074c0-.058-.049-.087-.146-.087H.293v-.198c.258-.173.511-.367.76-.581.25-.215.457-.437.623-.667.166-.23.249-.447.249-.653a.49.49 0 0 0-.321-.478.794.794 0 0 0-.582-.006.482.482 0 0 0-.196.138.284.284 0 0 0-.07.182c0 .074.04.17.12.289.006.008.009.015.009.02 0 .012-.041.03-.123.053l-.19.057a.693.693 0 0 1-.115.03c-.031 0-.067-.038-.108-.114a.516.516 0 0 1 .071-.586.899.899 0 0 1 .405-.238c.18-.058.4-.087.657-.087.317 0 .566.044.749.132.183.087.306.187.37.3a.64.64 0 0 1 .094.312c0 .197-.089.389-.266.575a5.296 5.296 0 0 1-.916.74 62.947 62.947 0 0 1-.62.413h1.843zM4 0h8v1H4zM4 2h8v1H4zM4 4h8v1H4zM4 6h8v1H4z" />
8
- </g>
9
- </svg>
10
- );
11
- };
12
-
13
- export default Ol;
@@ -1,13 +0,0 @@
1
- import React from 'react';
2
-
3
- const Quote = () => {
4
- return (
5
- <svg width="9" height="9" xmlns="http://www.w3.org/2000/svg">
6
- <g fill="#333740" fillRule="evenodd">
7
- <path d="M3 0C2.047 0 1.301.263.782.782.263 1.302 0 2.047 0 3v6h3.75V3H1.5c0-.54.115-.93.343-1.157C2.07 1.615 2.46 1.5 3 1.5M8.25 0c-.953 0-1.699.263-2.218.782-.519.52-.782 1.265-.782 2.218v6H9V3H6.75c0-.54.115-.93.343-1.157.227-.228.617-.343 1.157-.343" />
8
- </g>
9
- </svg>
10
- );
11
- };
12
-
13
- export default Quote;
@@ -1,24 +0,0 @@
1
- import React from 'react';
2
-
3
- const Striked = () => {
4
- return (
5
- <svg width="19" height="10" xmlns="http://www.w3.org/2000/svg">
6
- <g fill="none" fillRule="evenodd">
7
- <text
8
- fontFamily="Lato-Semibold, Lato"
9
- fontSize="11"
10
- fontWeight="500"
11
- fill="#41464E"
12
- transform="translate(0 -2)"
13
- >
14
- <tspan x="1" y="11">
15
- abc
16
- </tspan>
17
- </text>
18
- <path d="M.5 6.5h18" stroke="#2C3039" strokeLinecap="square" />
19
- </g>
20
- </svg>
21
- );
22
- };
23
-
24
- export default Striked;
@@ -1,15 +0,0 @@
1
- import React from 'react';
2
-
3
- const Ul = () => {
4
- return (
5
- <svg width="13" height="7" xmlns="http://www.w3.org/2000/svg">
6
- <g fill="none" fillRule="evenodd">
7
- <path fill="#333740" d="M5 0h8v1H5zM5 2h8v1H5zM5 4h8v1H5zM5 6h8v1H5z" />
8
- <rect stroke="#333740" x=".5" y=".5" width="2" height="2" rx="1" />
9
- <rect stroke="#333740" x=".5" y="4.5" width="2" height="2" rx="1" />
10
- </g>
11
- </svg>
12
- );
13
- };
14
-
15
- export default Ul;
@@ -1,22 +0,0 @@
1
- import React from 'react';
2
-
3
- const Underline = () => {
4
- return (
5
- <svg width="10" height="10" xmlns="http://www.w3.org/2000/svg">
6
- <text
7
- transform="translate(-10 -11)"
8
- fill="#101622"
9
- fillRule="evenodd"
10
- fontSize="13"
11
- fontFamily="Baskerville-SemiBold, Baskerville"
12
- fontWeight="500"
13
- >
14
- <tspan x="10" y="20">
15
- U
16
- </tspan>
17
- </text>
18
- </svg>
19
- );
20
- };
21
-
22
- export default Underline;
Binary file
Binary file