strapi-plugin-navigation 2.5.4 → 3.0.0-beta.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 (484) hide show
  1. package/README.md +43 -70
  2. package/dist/_chunks/ca-BR-kBlg0.mjs +478 -0
  3. package/dist/_chunks/ca-BR-kBlg0.mjs.map +1 -0
  4. package/dist/_chunks/ca-CUqlPpIU.js +478 -0
  5. package/dist/_chunks/ca-CUqlPpIU.js.map +1 -0
  6. package/dist/_chunks/en-BX9EIpFS.js +480 -0
  7. package/dist/_chunks/en-BX9EIpFS.js.map +1 -0
  8. package/dist/_chunks/en-DGoYXo3O.mjs +480 -0
  9. package/dist/_chunks/en-DGoYXo3O.mjs.map +1 -0
  10. package/dist/_chunks/fr-C7TqeT5C.mjs +480 -0
  11. package/dist/_chunks/fr-C7TqeT5C.mjs.map +1 -0
  12. package/dist/_chunks/fr-DmfGsoRQ.js +480 -0
  13. package/dist/_chunks/fr-DmfGsoRQ.js.map +1 -0
  14. package/dist/admin/index.js +57380 -0
  15. package/dist/admin/index.js.map +1 -0
  16. package/dist/admin/index.mjs +57361 -0
  17. package/dist/admin/index.mjs.map +1 -0
  18. package/dist/admin/src/api/client.d.ts +190 -0
  19. package/dist/admin/src/api/index.d.ts +1 -0
  20. package/dist/admin/src/api/validators.d.ts +1828 -0
  21. package/dist/admin/src/components/ConfirmationDialog/index.d.ts +20 -0
  22. package/dist/admin/src/components/Initializer.d.ts +5 -0
  23. package/dist/admin/src/components/RestartAlert/index.d.ts +2 -0
  24. package/{admin → dist/admin}/src/components/TextArrayInput/index.d.ts +1 -4
  25. package/dist/admin/src/components/icons/index.d.ts +1 -0
  26. package/dist/admin/src/components/icons/navigation.d.ts +4 -0
  27. package/dist/admin/src/components/icons/pluginIcon.d.ts +7 -0
  28. package/dist/admin/src/index.d.ts +10 -0
  29. package/dist/admin/src/pages/App.d.ts +2 -0
  30. package/dist/admin/src/pages/HomePage/components/AdditionalFieldInput/index.d.ts +12 -0
  31. package/dist/admin/src/pages/HomePage/components/CollapseButton/index.d.ts +8 -0
  32. package/{admin/src → dist/admin/src/pages/HomePage}/components/DragButton/index.d.ts +0 -1
  33. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/I18nCopyNavigationItems/index.d.ts +2 -3
  34. package/dist/admin/src/pages/HomePage/components/NavigationContentHeader/index.d.ts +7 -0
  35. package/{admin/src/hooks/useNavigationManager.d.ts → dist/admin/src/pages/HomePage/components/NavigationHeader/hooks.d.ts} +1 -2
  36. package/dist/admin/src/pages/HomePage/components/NavigationHeader/index.d.ts +23 -0
  37. package/dist/admin/src/pages/HomePage/components/NavigationHeader/styles.d.ts +2 -0
  38. package/dist/admin/src/pages/HomePage/components/NavigationItemForm/index.d.ts +22 -0
  39. package/dist/admin/src/pages/HomePage/components/NavigationItemForm/types.d.ts +45 -0
  40. package/dist/admin/src/pages/HomePage/components/NavigationItemForm/utils/form.d.ts +184 -0
  41. package/dist/admin/src/pages/HomePage/components/NavigationItemForm/utils/hooks.d.ts +1 -0
  42. package/dist/admin/src/pages/HomePage/components/NavigationItemForm/utils/properties.d.ts +33 -0
  43. package/dist/admin/src/pages/HomePage/components/NavigationItemList/Wrapper.d.ts +5 -0
  44. package/dist/admin/src/pages/HomePage/components/NavigationItemList/index.d.ts +24 -0
  45. package/dist/admin/src/pages/HomePage/components/NavigationItemListItem/ItemCardBadge/index.d.ts +2 -0
  46. package/dist/admin/src/pages/HomePage/components/NavigationItemListItem/ItemCardHeader/Wrapper.d.ts +2 -0
  47. package/dist/admin/src/pages/HomePage/components/NavigationItemListItem/ItemCardHeader/icons.d.ts +5 -0
  48. package/dist/admin/src/pages/HomePage/components/NavigationItemListItem/ItemCardHeader/index.d.ts +16 -0
  49. package/dist/admin/src/pages/HomePage/components/NavigationItemListItem/ItemCardRemovedOverlay/index.d.ts +2 -0
  50. package/dist/admin/src/pages/HomePage/components/NavigationItemListItem/Wrapper.d.ts +6 -0
  51. package/dist/admin/src/pages/HomePage/components/NavigationItemListItem/index.d.ts +43 -0
  52. package/dist/admin/src/pages/HomePage/components/NavigationItemPopup/NavigationItemPopupFooter.d.ts +10 -0
  53. package/dist/admin/src/pages/HomePage/components/NavigationItemPopup/NavigationItemPopupHeader.d.ts +4 -0
  54. package/dist/admin/src/pages/HomePage/components/NavigationItemPopup/index.d.ts +19 -0
  55. package/dist/admin/src/pages/HomePage/components/NavigationManager/AllNavigations/icons.d.ts +3 -0
  56. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/NavigationManager/AllNavigations/index.d.ts +3 -4
  57. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/NavigationManager/DeletionConfirm/index.d.ts +3 -4
  58. package/dist/admin/src/pages/HomePage/components/NavigationManager/ErrorDetails/index.d.ts +7 -0
  59. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/NavigationManager/Footer/index.d.ts +7 -6
  60. package/dist/admin/src/pages/HomePage/components/NavigationManager/Form/hooks.d.ts +8 -0
  61. package/dist/admin/src/pages/HomePage/components/NavigationManager/Form/index.d.ts +10 -0
  62. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/NavigationManager/NavigationUpdate/index.d.ts +3 -4
  63. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/NavigationManager/NewNavigation/index.d.ts +3 -4
  64. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/NavigationManager/PurgeCacheConfirm/index.d.ts +3 -4
  65. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/NavigationManager/index.d.ts +3 -4
  66. package/{admin/src/pages/View → dist/admin/src/pages/HomePage}/components/NavigationManager/types.d.ts +14 -14
  67. package/dist/admin/src/pages/HomePage/components/Search/index.d.ts +11 -0
  68. package/dist/admin/src/pages/HomePage/components/index.d.ts +1 -0
  69. package/dist/admin/src/pages/HomePage/hooks/index.d.ts +143 -0
  70. package/dist/admin/src/pages/HomePage/index.d.ts +2 -0
  71. package/dist/admin/src/pages/HomePage/utils/index.d.ts +5 -0
  72. package/dist/admin/src/pages/HomePage/utils/parsers.d.ts +46 -0
  73. package/dist/admin/src/pages/SettingsPage/common/const.d.ts +1 -0
  74. package/dist/admin/src/pages/SettingsPage/common/index.d.ts +1 -0
  75. package/dist/admin/src/pages/SettingsPage/components/CustomFieldForm/hooks/index.d.ts +10 -0
  76. package/{admin → dist/admin}/src/pages/SettingsPage/components/CustomFieldForm/index.d.ts +2 -3
  77. package/{admin → dist/admin}/src/pages/SettingsPage/components/CustomFieldModal/index.d.ts +2 -3
  78. package/{admin → dist/admin}/src/pages/SettingsPage/components/CustomFieldTable/index.d.ts +4 -4
  79. package/dist/admin/src/pages/SettingsPage/hooks/index.d.ts +427 -0
  80. package/dist/admin/src/pages/SettingsPage/index.d.ts +1 -0
  81. package/dist/admin/src/pages/SettingsPage/types.d.ts +7 -0
  82. package/dist/admin/src/pages/SettingsPage/utils/index.d.ts +9 -0
  83. package/dist/admin/src/pluginId.d.ts +1 -0
  84. package/dist/admin/src/schemas/config.d.ts +453 -0
  85. package/dist/admin/src/schemas/content-type.d.ts +49 -0
  86. package/dist/admin/src/schemas/index.d.ts +2 -0
  87. package/dist/admin/src/translations/ca.d.ts +475 -0
  88. package/dist/admin/src/translations/en.d.ts +478 -0
  89. package/dist/admin/src/translations/fr.d.ts +477 -0
  90. package/dist/admin/src/translations/index.d.ts +14 -0
  91. package/dist/admin/src/types.d.ts +3 -0
  92. package/dist/admin/src/utils/constants.d.ts +1 -0
  93. package/dist/admin/src/utils/getTranslation.d.ts +3 -0
  94. package/{admin/src → dist/admin/src/utils}/permissions.d.ts +6 -7
  95. package/dist/admin/src/utils/prefixPluginTranslations.d.ts +3 -0
  96. package/dist/assets/configuration.png +0 -0
  97. package/dist/assets/logo.png +0 -0
  98. package/dist/assets/manager-view.png +0 -0
  99. package/dist/assets/marketplace.png +0 -0
  100. package/dist/assets/preview.png +0 -0
  101. package/dist/server/index.js +16463 -0
  102. package/dist/server/index.js.map +1 -0
  103. package/dist/server/index.mjs +16426 -0
  104. package/dist/server/index.mjs.map +1 -0
  105. package/dist/server/src/app-errors.d.ts +11 -0
  106. package/dist/server/src/bootstrap.d.ts +5 -0
  107. package/dist/server/src/cache/index.d.ts +4 -0
  108. package/dist/server/src/config/index.d.ts +20 -0
  109. package/dist/server/src/config/setup.d.ts +41 -0
  110. package/{server → dist/server/src}/content-types/audience/index.d.ts +0 -1
  111. package/{server → dist/server/src}/content-types/audience/schema.d.ts +0 -1
  112. package/{server → dist/server/src}/content-types/index.d.ts +11 -65
  113. package/{server → dist/server/src}/content-types/navigation/index.d.ts +7 -10
  114. package/dist/server/src/content-types/navigation/lifecycles.d.ts +2 -0
  115. package/{server → dist/server/src}/content-types/navigation/schema.d.ts +6 -9
  116. package/{server → dist/server/src}/content-types/navigation-item/index.d.ts +3 -6
  117. package/dist/server/src/content-types/navigation-item/lifecycles.d.ts +2 -0
  118. package/{server → dist/server/src}/content-types/navigation-item/schema.d.ts +2 -5
  119. package/dist/server/src/controllers/admin.d.ts +241 -0
  120. package/dist/server/src/controllers/client.d.ts +192 -0
  121. package/dist/server/src/controllers/index.d.ts +7 -0
  122. package/dist/server/src/controllers/utils.d.ts +4 -0
  123. package/dist/server/src/controllers/validators.d.ts +49 -0
  124. package/dist/server/src/destroy.d.ts +5 -0
  125. package/dist/server/src/dtos/config.d.ts +28 -0
  126. package/dist/server/src/dtos/index.d.ts +3 -0
  127. package/dist/server/src/dtos/navigation-item.d.ts +52 -0
  128. package/dist/server/src/dtos/navigation.d.ts +5 -0
  129. package/dist/server/src/graphql/config.d.ts +5 -0
  130. package/dist/server/src/graphql/index.d.ts +1 -0
  131. package/dist/server/src/graphql/queries/index.d.ts +1 -0
  132. package/dist/server/src/graphql/queries/render-navigation-child.d.ts +31 -0
  133. package/dist/server/src/graphql/queries/render-navigation.d.ts +32 -0
  134. package/{server → dist/server/src}/graphql/resolvers-config.d.ts +1 -3
  135. package/dist/server/src/graphql/setup.d.ts +4 -0
  136. package/dist/server/src/graphql/types/content-types-name-fields.d.ts +2 -0
  137. package/dist/server/src/graphql/types/content-types.d.ts +2 -0
  138. package/dist/server/src/graphql/types/create-navigation-item.d.ts +2 -0
  139. package/dist/server/src/graphql/types/create-navigation-related.d.ts +2 -0
  140. package/dist/server/src/graphql/types/create-navigation.d.ts +2 -0
  141. package/dist/server/src/graphql/types/index.d.ts +1 -0
  142. package/dist/server/src/graphql/types/navigation-config.d.ts +2 -0
  143. package/dist/server/src/graphql/types/navigation-details.d.ts +2 -0
  144. package/dist/server/src/graphql/types/navigation-item-additional-field-media.d.ts +2 -0
  145. package/dist/server/src/graphql/types/navigation-item-additional-fields.d.ts +2 -0
  146. package/dist/server/src/graphql/types/navigation-item-related-data.d.ts +2 -0
  147. package/dist/server/src/graphql/types/navigation-item-related.d.ts +2 -0
  148. package/dist/server/src/graphql/types/navigation-item.d.ts +2 -0
  149. package/dist/server/src/graphql/types/navigation-render-type.d.ts +2 -0
  150. package/dist/server/src/graphql/types/navigation.d.ts +2 -0
  151. package/dist/server/src/i18n/index.d.ts +4 -0
  152. package/dist/server/src/index.d.ts +582 -0
  153. package/dist/server/src/middlewares/index.d.ts +2 -0
  154. package/dist/server/src/permissions/index.d.ts +3 -0
  155. package/{permissions.d.ts → dist/server/src/permissions/permissions.d.ts} +0 -1
  156. package/dist/server/src/permissions/setup.d.ts +4 -0
  157. package/dist/server/src/permissions.d.ts +13 -0
  158. package/dist/server/src/policies/index.d.ts +2 -0
  159. package/dist/server/src/register.d.ts +5 -0
  160. package/dist/server/src/repositories/audience.d.ts +11 -0
  161. package/dist/server/src/repositories/generic.d.ts +27 -0
  162. package/dist/server/src/repositories/index.d.ts +4 -0
  163. package/dist/server/src/repositories/navigation-item.d.ts +24 -0
  164. package/dist/server/src/repositories/navigation.d.ts +47 -0
  165. package/dist/server/src/routes/admin.d.ts +24 -0
  166. package/dist/server/src/routes/client.d.ts +17 -0
  167. package/dist/server/src/routes/index.d.ts +37 -0
  168. package/dist/server/src/schemas/config.d.ts +424 -0
  169. package/dist/server/src/schemas/content-type.d.ts +918 -0
  170. package/dist/server/src/schemas/index.d.ts +3 -0
  171. package/dist/server/src/schemas/navigation.d.ts +237 -0
  172. package/dist/server/src/services/admin/admin.d.ts +32 -0
  173. package/dist/server/src/services/admin/index.d.ts +3 -0
  174. package/dist/server/src/services/admin/types.d.ts +45 -0
  175. package/dist/server/src/services/admin/utils.d.ts +32 -0
  176. package/dist/server/src/services/client/client.d.ts +93 -0
  177. package/dist/server/src/services/client/index.d.ts +3 -0
  178. package/dist/server/src/services/client/types.d.ts +66 -0
  179. package/dist/server/src/services/client/utils.d.ts +12 -0
  180. package/dist/server/src/services/common/common.d.ts +31 -0
  181. package/dist/server/src/services/common/index.d.ts +3 -0
  182. package/dist/server/src/services/common/types.d.ts +68 -0
  183. package/dist/server/src/services/common/utils.d.ts +12 -0
  184. package/dist/server/src/services/index.d.ts +320 -0
  185. package/dist/server/src/services/migration/index.d.ts +3 -0
  186. package/dist/server/src/services/migration/migration.d.ts +8 -0
  187. package/dist/server/src/types.d.ts +40 -0
  188. package/dist/server/src/utils/constants.d.ts +13 -0
  189. package/dist/server/src/utils/functions.d.ts +30 -0
  190. package/dist/server/src/utils/index.d.ts +2 -0
  191. package/package.json +118 -33
  192. package/admin/src/components/AdditionalFieldInput/index.d.ts +0 -5
  193. package/admin/src/components/AdditionalFieldInput/index.js +0 -99
  194. package/admin/src/components/AdditionalFieldInput/types.d.ts +0 -15
  195. package/admin/src/components/AdditionalFieldInput/types.js +0 -3
  196. package/admin/src/components/Alert/styles.d.ts +0 -2
  197. package/admin/src/components/Alert/styles.js +0 -14
  198. package/admin/src/components/CollapseButton/index.d.ts +0 -7
  199. package/admin/src/components/CollapseButton/index.js +0 -30
  200. package/admin/src/components/ConfirmationDialog/index.d.ts +0 -28
  201. package/admin/src/components/ConfirmationDialog/index.js +0 -34
  202. package/admin/src/components/DragButton/index.js +0 -62
  203. package/admin/src/components/EmptyView/index.d.ts +0 -3
  204. package/admin/src/components/EmptyView/index.js +0 -30
  205. package/admin/src/components/Item/ItemCardBadge/index.d.ts +0 -3
  206. package/admin/src/components/Item/ItemCardBadge/index.js +0 -26
  207. package/admin/src/components/Item/ItemCardHeader/Wrapper.d.ts +0 -3
  208. package/admin/src/components/Item/ItemCardHeader/Wrapper.js +0 -21
  209. package/admin/src/components/Item/ItemCardHeader/icons.d.ts +0 -5
  210. package/admin/src/components/Item/ItemCardHeader/icons.js +0 -13
  211. package/admin/src/components/Item/ItemCardHeader/index.d.ts +0 -17
  212. package/admin/src/components/Item/ItemCardHeader/index.js +0 -38
  213. package/admin/src/components/Item/ItemCardRemovedOverlay/index.d.ts +0 -2
  214. package/admin/src/components/Item/ItemCardRemovedOverlay/index.js +0 -18
  215. package/admin/src/components/Item/Wrapper.d.ts +0 -3
  216. package/admin/src/components/Item/Wrapper.js +0 -43
  217. package/admin/src/components/Item/index.d.ts +0 -31
  218. package/admin/src/components/Item/index.js +0 -188
  219. package/admin/src/components/NavigationItemList/Wrapper.d.ts +0 -3
  220. package/admin/src/components/NavigationItemList/Wrapper.js +0 -26
  221. package/admin/src/components/NavigationItemList/index.d.ts +0 -36
  222. package/admin/src/components/NavigationItemList/index.js +0 -32
  223. package/admin/src/components/RestartAlert/index.d.ts +0 -3
  224. package/admin/src/components/RestartAlert/index.js +0 -13
  225. package/admin/src/components/Search/index.d.ts +0 -12
  226. package/admin/src/components/Search/index.js +0 -97
  227. package/admin/src/components/TextArrayInput/index.js +0 -45
  228. package/admin/src/components/icons/navigation.d.ts +0 -6
  229. package/admin/src/components/icons/navigation.js +0 -12
  230. package/admin/src/contexts/DataManagerContext.d.ts +0 -3
  231. package/admin/src/contexts/DataManagerContext.js +0 -6
  232. package/admin/src/hooks/useAllContentTypes.d.ts +0 -3
  233. package/admin/src/hooks/useAllContentTypes.js +0 -8
  234. package/admin/src/hooks/useDataManager.d.ts +0 -3
  235. package/admin/src/hooks/useDataManager.js +0 -10
  236. package/admin/src/hooks/useI18nCopyNavigationItemsModal.d.ts +0 -9
  237. package/admin/src/hooks/useI18nCopyNavigationItemsModal.js +0 -51
  238. package/admin/src/hooks/useNavigationConfig.d.ts +0 -10
  239. package/admin/src/hooks/useNavigationConfig.js +0 -54
  240. package/admin/src/hooks/useNavigationManager.js +0 -41
  241. package/admin/src/index.d.ts +0 -14
  242. package/admin/src/index.js +0 -87
  243. package/admin/src/pages/App/index.d.ts +0 -3
  244. package/admin/src/pages/App/index.js +0 -43
  245. package/admin/src/pages/DataManagerProvider/actions.d.ts +0 -21
  246. package/admin/src/pages/DataManagerProvider/actions.js +0 -24
  247. package/admin/src/pages/DataManagerProvider/index.d.ts +0 -12
  248. package/admin/src/pages/DataManagerProvider/index.js +0 -382
  249. package/admin/src/pages/DataManagerProvider/init.d.ts +0 -3
  250. package/admin/src/pages/DataManagerProvider/init.js +0 -7
  251. package/admin/src/pages/DataManagerProvider/reducer.d.ts +0 -20
  252. package/admin/src/pages/DataManagerProvider/reducer.js +0 -132
  253. package/admin/src/pages/NoAccessPage/index.d.ts +0 -3
  254. package/admin/src/pages/NoAccessPage/index.js +0 -31
  255. package/admin/src/pages/SettingsPage/common/const.d.ts +0 -2
  256. package/admin/src/pages/SettingsPage/common/const.js +0 -5
  257. package/admin/src/pages/SettingsPage/common/index.d.ts +0 -2
  258. package/admin/src/pages/SettingsPage/common/index.js +0 -18
  259. package/admin/src/pages/SettingsPage/components/CustomFieldForm/index.js +0 -129
  260. package/admin/src/pages/SettingsPage/components/CustomFieldModal/index.js +0 -20
  261. package/admin/src/pages/SettingsPage/components/CustomFieldTable/index.js +0 -105
  262. package/admin/src/pages/SettingsPage/components/DisableI18nModal/index.d.ts +0 -23
  263. package/admin/src/pages/SettingsPage/components/DisableI18nModal/index.js +0 -86
  264. package/admin/src/pages/SettingsPage/index.d.ts +0 -3
  265. package/admin/src/pages/SettingsPage/index.js +0 -321
  266. package/admin/src/pages/SettingsPage/types.d.ts +0 -35
  267. package/admin/src/pages/SettingsPage/types.js +0 -3
  268. package/admin/src/pages/SettingsPage/utils/form.d.ts +0 -20
  269. package/admin/src/pages/SettingsPage/utils/form.js +0 -37
  270. package/admin/src/pages/SettingsPage/utils/functions.d.ts +0 -3
  271. package/admin/src/pages/SettingsPage/utils/functions.js +0 -26
  272. package/admin/src/pages/View/components/I18nCopyNavigationItems/index.js +0 -15
  273. package/admin/src/pages/View/components/NavigationContentHeader/index.d.ts +0 -6
  274. package/admin/src/pages/View/components/NavigationContentHeader/index.js +0 -14
  275. package/admin/src/pages/View/components/NavigationHeader/index.d.ts +0 -14
  276. package/admin/src/pages/View/components/NavigationHeader/index.js +0 -92
  277. package/admin/src/pages/View/components/NavigationHeader/styles.d.ts +0 -2
  278. package/admin/src/pages/View/components/NavigationHeader/styles.js +0 -18
  279. package/admin/src/pages/View/components/NavigationItemForm/index.d.ts +0 -5
  280. package/admin/src/pages/View/components/NavigationItemForm/index.js +0 -470
  281. package/admin/src/pages/View/components/NavigationItemForm/types.d.ts +0 -99
  282. package/admin/src/pages/View/components/NavigationItemForm/types.js +0 -3
  283. package/admin/src/pages/View/components/NavigationItemForm/utils/form.d.ts +0 -28
  284. package/admin/src/pages/View/components/NavigationItemForm/utils/form.js +0 -123
  285. package/admin/src/pages/View/components/NavigationItemPopup/NavigationItemPopupFooter.d.ts +0 -25
  286. package/admin/src/pages/View/components/NavigationItemPopup/NavigationItemPopupFooter.js +0 -31
  287. package/admin/src/pages/View/components/NavigationItemPopup/NavigationItemPopupHeader.d.ts +0 -5
  288. package/admin/src/pages/View/components/NavigationItemPopup/NavigationItemPopupHeader.js +0 -20
  289. package/admin/src/pages/View/components/NavigationItemPopup/index.d.ts +0 -33
  290. package/admin/src/pages/View/components/NavigationItemPopup/index.js +0 -90
  291. package/admin/src/pages/View/components/NavigationManager/AllNavigations/icons.d.ts +0 -4
  292. package/admin/src/pages/View/components/NavigationManager/AllNavigations/icons.js +0 -12
  293. package/admin/src/pages/View/components/NavigationManager/AllNavigations/index.js +0 -151
  294. package/admin/src/pages/View/components/NavigationManager/DeletionConfirm/index.js +0 -34
  295. package/admin/src/pages/View/components/NavigationManager/ErrorDetails/index.d.ts +0 -8
  296. package/admin/src/pages/View/components/NavigationManager/ErrorDetails/index.js +0 -53
  297. package/admin/src/pages/View/components/NavigationManager/Footer/index.js +0 -13
  298. package/admin/src/pages/View/components/NavigationManager/Form/index.d.ts +0 -19
  299. package/admin/src/pages/View/components/NavigationManager/Form/index.js +0 -103
  300. package/admin/src/pages/View/components/NavigationManager/NavigationUpdate/index.js +0 -59
  301. package/admin/src/pages/View/components/NavigationManager/NewNavigation/index.js +0 -62
  302. package/admin/src/pages/View/components/NavigationManager/PurgeCacheConfirm/index.js +0 -34
  303. package/admin/src/pages/View/components/NavigationManager/index.js +0 -203
  304. package/admin/src/pages/View/components/NavigationManager/types.js +0 -3
  305. package/admin/src/pages/View/index.d.ts +0 -4
  306. package/admin/src/pages/View/index.js +0 -269
  307. package/admin/src/pages/View/utils/form.d.ts +0 -2
  308. package/admin/src/pages/View/utils/form.js +0 -16
  309. package/admin/src/pages/View/utils/index.d.ts +0 -2
  310. package/admin/src/pages/View/utils/index.js +0 -11
  311. package/admin/src/pages/View/utils/parsers.d.ts +0 -51
  312. package/admin/src/pages/View/utils/parsers.js +0 -272
  313. package/admin/src/pages/View/utils/types.d.ts +0 -3
  314. package/admin/src/pages/View/utils/types.js +0 -3
  315. package/admin/src/permissions.js +0 -13
  316. package/admin/src/pluginId.d.ts +0 -3
  317. package/admin/src/pluginId.js +0 -5
  318. package/admin/src/translations/ca.json +0 -199
  319. package/admin/src/translations/en.json +0 -220
  320. package/admin/src/translations/fr.json +0 -48
  321. package/admin/src/translations/index.d.ts +0 -15
  322. package/admin/src/translations/index.js +0 -21
  323. package/admin/src/utils/api.d.ts +0 -9
  324. package/admin/src/utils/api.js +0 -20
  325. package/admin/src/utils/enums.d.ts +0 -25
  326. package/admin/src/utils/enums.js +0 -30
  327. package/admin/src/utils/functions.d.ts +0 -16
  328. package/admin/src/utils/functions.js +0 -46
  329. package/admin/src/utils/index.d.ts +0 -4
  330. package/admin/src/utils/index.js +0 -20
  331. package/permissions.js +0 -13
  332. package/server/bootstrap/index.d.ts +0 -4
  333. package/server/bootstrap/index.js +0 -50
  334. package/server/cache/index.d.ts +0 -2
  335. package/server/cache/index.js +0 -18
  336. package/server/cache/serviceEnhancers.d.ts +0 -3
  337. package/server/cache/serviceEnhancers.js +0 -16
  338. package/server/cache/setupStrategy.d.ts +0 -3
  339. package/server/cache/setupStrategy.js +0 -38
  340. package/server/cache/types.d.ts +0 -11
  341. package/server/cache/types.js +0 -3
  342. package/server/cache/utils.d.ts +0 -11
  343. package/server/cache/utils.js +0 -19
  344. package/server/config/index.d.ts +0 -5
  345. package/server/config/index.js +0 -37
  346. package/server/config/setupStrategy.d.ts +0 -3
  347. package/server/config/setupStrategy.js +0 -55
  348. package/server/content-types/audience/index.js +0 -10
  349. package/server/content-types/audience/schema.js +0 -26
  350. package/server/content-types/index.js +0 -16
  351. package/server/content-types/navigation/index.js +0 -12
  352. package/server/content-types/navigation/lifecycles.d.ts +0 -3
  353. package/server/content-types/navigation/lifecycles.js +0 -7
  354. package/server/content-types/navigation/schema.js +0 -57
  355. package/server/content-types/navigation-item/index.js +0 -12
  356. package/server/content-types/navigation-item/lifecycles.d.ts +0 -3
  357. package/server/content-types/navigation-item/lifecycles.js +0 -7
  358. package/server/content-types/navigation-item/schema.js +0 -113
  359. package/server/content-types/navigations-items-related/index.d.ts +0 -51
  360. package/server/content-types/navigations-items-related/index.js +0 -10
  361. package/server/content-types/navigations-items-related/schema.d.ts +0 -49
  362. package/server/content-types/navigations-items-related/schema.js +0 -50
  363. package/server/controllers/admin.d.ts +0 -4
  364. package/server/controllers/admin.js +0 -164
  365. package/server/controllers/client.d.ts +0 -4
  366. package/server/controllers/client.js +0 -75
  367. package/server/controllers/index.d.ts +0 -4
  368. package/server/controllers/index.js +0 -13
  369. package/server/destroy.d.ts +0 -3
  370. package/server/destroy.js +0 -5
  371. package/server/graphql/config.d.ts +0 -4
  372. package/server/graphql/config.js +0 -28
  373. package/server/graphql/index.d.ts +0 -2
  374. package/server/graphql/index.js +0 -18
  375. package/server/graphql/queries/index.d.ts +0 -3
  376. package/server/graphql/queries/index.js +0 -17
  377. package/server/graphql/queries/render-navigation-child.d.ts +0 -15
  378. package/server/graphql/queries/render-navigation-child.js +0 -25
  379. package/server/graphql/queries/render-navigation.d.ts +0 -21
  380. package/server/graphql/queries/render-navigation.js +0 -32
  381. package/server/graphql/resolvers-config.js +0 -6
  382. package/server/graphql/setupStrategy.d.ts +0 -3
  383. package/server/graphql/setupStrategy.js +0 -15
  384. package/server/graphql/types/content-types-name-fields.d.ts +0 -6
  385. package/server/graphql/types/content-types-name-fields.js +0 -14
  386. package/server/graphql/types/content-types.d.ts +0 -5
  387. package/server/graphql/types/content-types.js +0 -18
  388. package/server/graphql/types/create-navigation-item.d.ts +0 -5
  389. package/server/graphql/types/create-navigation-item.js +0 -19
  390. package/server/graphql/types/create-navigation-related.d.ts +0 -5
  391. package/server/graphql/types/create-navigation-related.js +0 -10
  392. package/server/graphql/types/create-navigation.d.ts +0 -5
  393. package/server/graphql/types/create-navigation.js +0 -9
  394. package/server/graphql/types/index.d.ts +0 -3
  395. package/server/graphql/types/index.js +0 -18
  396. package/server/graphql/types/navigation-config.d.ts +0 -5
  397. package/server/graphql/types/navigation-config.js +0 -11
  398. package/server/graphql/types/navigation-details.d.ts +0 -5
  399. package/server/graphql/types/navigation-details.js +0 -12
  400. package/server/graphql/types/navigation-item-additional-field-media.d.ts +0 -5
  401. package/server/graphql/types/navigation-item-additional-field-media.js +0 -13
  402. package/server/graphql/types/navigation-item-related-data.d.ts +0 -5
  403. package/server/graphql/types/navigation-item-related-data.js +0 -9
  404. package/server/graphql/types/navigation-item-related.d.ts +0 -7
  405. package/server/graphql/types/navigation-item-related.js +0 -25
  406. package/server/graphql/types/navigation-item.d.ts +0 -6
  407. package/server/graphql/types/navigation-item.js +0 -55
  408. package/server/graphql/types/navigation-render-type.d.ts +0 -5
  409. package/server/graphql/types/navigation-render-type.js +0 -7
  410. package/server/graphql/types/navigation.d.ts +0 -5
  411. package/server/graphql/types/navigation.js +0 -11
  412. package/server/i18n/constant.d.ts +0 -2
  413. package/server/i18n/constant.js +0 -5
  414. package/server/i18n/errors.d.ts +0 -7
  415. package/server/i18n/errors.js +0 -14
  416. package/server/i18n/graphQLEnhancers.d.ts +0 -10
  417. package/server/i18n/graphQLEnhancers.js +0 -10
  418. package/server/i18n/index.d.ts +0 -8
  419. package/server/i18n/index.js +0 -23
  420. package/server/i18n/navigationSetupStrategy.d.ts +0 -3
  421. package/server/i18n/navigationSetupStrategy.js +0 -147
  422. package/server/i18n/serviceEnhancers.d.ts +0 -13
  423. package/server/i18n/serviceEnhancers.js +0 -156
  424. package/server/i18n/types.d.ts +0 -60
  425. package/server/i18n/types.js +0 -3
  426. package/server/i18n/utils.d.ts +0 -13
  427. package/server/i18n/utils.js +0 -33
  428. package/server/index.d.ts +0 -262
  429. package/server/index.js +0 -26
  430. package/server/navigation/index.d.ts +0 -2
  431. package/server/navigation/index.js +0 -18
  432. package/server/navigation/setupStrategy.d.ts +0 -3
  433. package/server/navigation/setupStrategy.js +0 -39
  434. package/server/register/index.d.ts +0 -3
  435. package/server/register/index.js +0 -4
  436. package/server/routes/admin.d.ts +0 -4
  437. package/server/routes/admin.js +0 -209
  438. package/server/routes/client.d.ts +0 -4
  439. package/server/routes/client.js +0 -33
  440. package/server/routes/index.d.ts +0 -6
  441. package/server/routes/index.js +0 -13
  442. package/server/services/admin.d.ts +0 -5
  443. package/server/services/admin.js +0 -347
  444. package/server/services/client.d.ts +0 -5
  445. package/server/services/client.js +0 -335
  446. package/server/services/common.d.ts +0 -5
  447. package/server/services/common.js +0 -385
  448. package/server/services/index.d.ts +0 -7
  449. package/server/services/index.js +0 -15
  450. package/server/utils/constant.d.ts +0 -27
  451. package/server/utils/constant.js +0 -43
  452. package/server/utils/functions.d.ts +0 -157
  453. package/server/utils/functions.js +0 -339
  454. package/server/utils/index.d.ts +0 -3
  455. package/server/utils/index.js +0 -19
  456. package/strapi-admin.d.ts +0 -3
  457. package/strapi-admin.js +0 -8
  458. package/strapi-server.d.ts +0 -262
  459. package/strapi-server.js +0 -7
  460. package/tsconfig.tsbuildinfo +0 -1
  461. package/types/bootstrap.d.ts +0 -16
  462. package/types/bootstrap.js +0 -3
  463. package/types/config.d.ts +0 -27
  464. package/types/config.js +0 -3
  465. package/types/contentTypes.d.ts +0 -112
  466. package/types/contentTypes.js +0 -3
  467. package/types/controllers.d.ts +0 -65
  468. package/types/controllers.js +0 -5
  469. package/types/graphQL.d.ts +0 -3
  470. package/types/graphQL.js +0 -3
  471. package/types/i18n.d.ts +0 -9
  472. package/types/i18n.js +0 -3
  473. package/types/index.d.ts +0 -10
  474. package/types/index.js +0 -26
  475. package/types/lifecycle.d.ts +0 -22
  476. package/types/lifecycle.js +0 -3
  477. package/types/services.d.ts +0 -106
  478. package/types/services.js +0 -3
  479. package/types/utils.d.ts +0 -72
  480. package/types/utils.js +0 -41
  481. package/utils/InvalidParamNavigationError.d.ts +0 -4
  482. package/utils/InvalidParamNavigationError.js +0 -8
  483. package/utils/NavigationError.d.ts +0 -5
  484. package/utils/NavigationError.js +0 -11
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.MoreButton = void 0;
7
- const styled_components_1 = __importDefault(require("styled-components"));
8
- const IconButton_1 = require("@strapi/design-system/IconButton");
9
- exports.MoreButton = (0, styled_components_1.default)(IconButton_1.IconButton) `
10
- margin: ${({ theme }) => `0 ${theme.spaces[2]}`};
11
- padding: ${({ theme }) => theme.spaces[2]};
12
-
13
- svg {
14
- width: ${18 / 16}rem;
15
- height: ${18 / 16}rem;
16
- }
17
- `;
18
- //# sourceMappingURL=styles.js.map
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
- import { NavigationItemFormProps } from './types';
3
- declare const NavigationItemForm: React.FC<NavigationItemFormProps>;
4
- export default NavigationItemForm;
5
- //# sourceMappingURL=index.d.ts.map
@@ -1,470 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const formik_1 = require("formik");
30
- const lodash_1 = require("lodash");
31
- const fp_1 = require("lodash/fp");
32
- const react_1 = __importStar(require("react"));
33
- const ModalLayout_1 = require("@strapi/design-system/ModalLayout");
34
- const Select_1 = require("@strapi/design-system/Select");
35
- const Grid_1 = require("@strapi/design-system/Grid");
36
- const helper_plugin_1 = require("@strapi/helper-plugin");
37
- const Button_1 = require("@strapi/design-system/Button");
38
- const types_1 = require("../../../../../../types");
39
- const AdditionalFieldInput_1 = __importDefault(require("../../../../components/AdditionalFieldInput"));
40
- const translations_1 = require("../../../../translations");
41
- const utils_1 = require("../../../../utils");
42
- const form_1 = require("../../utils/form");
43
- const parsers_1 = require("../../utils/parsers");
44
- const NavigationItemPopupFooter_1 = require("../NavigationItemPopup/NavigationItemPopupFooter");
45
- const formDefinition = __importStar(require("./utils/form"));
46
- const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading, inputsPrefix, data, contentTypes = [], contentTypeEntities = [], usedContentTypeEntities = [], availableAudience = [], additionalFields = [], contentTypesNameFields = {}, onSubmit, onCancel, getContentTypeEntities, usedContentTypesData, appendLabelPublicationStatus = appendLabelPublicationStatusFallback, locale, readNavigationItemFromLocale, slugify, permissions = {}, }) => {
47
- const [isLoading, setIsLoading] = (0, react_1.useState)(isPreloading);
48
- const [hasBeenInitialized, setInitializedState] = (0, react_1.useState)(false);
49
- const [hasChanged, setChangedState] = (0, react_1.useState)(false);
50
- const [contentTypeSearchQuery, setContentTypeSearchQuery] = (0, react_1.useState)(undefined);
51
- const { canUpdate } = permissions;
52
- const formik = (0, formik_1.useFormik)({
53
- initialValues: formDefinition.defaultValues,
54
- onSubmit: loadingAware(async (payload) => onSubmit(await sanitizePayload(slugify, payload, data)), setIsLoading),
55
- validate: loadingAware(async (values) => (0, form_1.checkFormValidity)(await sanitizePayload(slugify, values, {}), formDefinition.schemaFactory(isSingleSelected, additionalFields)), setIsLoading),
56
- validateOnChange: false,
57
- });
58
- const initialRelatedTypeSelected = (0, lodash_1.get)(data, 'relatedType.value');
59
- const relatedTypeSelectValue = formik.values.relatedType;
60
- const relatedSelectValue = formik.values.related;
61
- const isI18nBootstrapAvailable = !!(config.i18nEnabled && availableLocale && availableLocale.length);
62
- const availableLocaleOptions = (0, react_1.useMemo)(() => availableLocale.map((locale, index) => ({
63
- key: `${locale}-${index}`,
64
- value: locale,
65
- label: locale,
66
- metadatas: {
67
- intlLabel: {
68
- id: `i18n.locale.${locale}`,
69
- defaultMessage: locale,
70
- },
71
- hidden: false,
72
- disabled: false,
73
- },
74
- })), [availableLocale]);
75
- const relatedFieldName = `${inputsPrefix}related`;
76
- if (!hasBeenInitialized && !(0, lodash_1.isEmpty)(data)) {
77
- setInitializedState(true);
78
- formik.setValues({
79
- autoSync: (0, lodash_1.get)(data, "autoSync", formDefinition.defaultValues.autoSync) ?? true,
80
- type: (0, lodash_1.get)(data, "type", formDefinition.defaultValues.type),
81
- related: (0, lodash_1.get)(data, "related.value", formDefinition.defaultValues.related),
82
- relatedType: (0, lodash_1.get)(data, "relatedType.value", formDefinition.defaultValues.relatedType),
83
- audience: (0, lodash_1.get)(data, "audience", formDefinition.defaultValues.audience).map((item) => (0, lodash_1.isObject)(item) ? item.id.toString() : item.toString()),
84
- additionalFields: (0, utils_1.getDefaultCustomFields)({
85
- additionalFields,
86
- customFieldsValues: (0, lodash_1.get)(data, "additionalFields", []),
87
- defaultCustomFieldsValues: formDefinition.defaultValues.additionalFields
88
- }),
89
- menuAttached: (0, lodash_1.get)(data, "menuAttached", formDefinition.defaultValues.menuAttached),
90
- path: (0, lodash_1.get)(data, "path", formDefinition.defaultValues.path),
91
- externalPath: (0, lodash_1.get)(data, "externalPath", formDefinition.defaultValues.externalPath),
92
- title: (0, lodash_1.get)(data, "title", formDefinition.defaultValues.title),
93
- updated: formDefinition.defaultValues.updated,
94
- });
95
- }
96
- const audienceOptions = (0, react_1.useMemo)(() => availableAudience.map((item) => ({
97
- value: (0, lodash_1.get)(item, 'id', " "),
98
- label: (0, lodash_1.get)(item, 'name', " "),
99
- })), [availableAudience]);
100
- const generatePreviewPath = () => {
101
- if (!isExternal) {
102
- const itemPath = (0, lodash_1.isEmpty)(formik.values.path) || formik.values.path === '/'
103
- ? getDefaultPath()
104
- : formik.values.path || "";
105
- const value = `${data.levelPath !== '/' ? `${data.levelPath}` : ''}/${itemPath}`;
106
- return {
107
- id: (0, translations_1.getTradId)('popup.item.form.type.external.description'),
108
- defaultMessage: '',
109
- values: { value }
110
- };
111
- }
112
- return undefined;
113
- };
114
- const getDefaultTitle = (0, react_1.useCallback)((related, relatedType, isSingleSelected) => {
115
- let selectedEntity;
116
- if (isSingleSelected) {
117
- selectedEntity = contentTypeEntities.find(_ => (_.uid === relatedType) || (_.__collectionUid === relatedType));
118
- if (!selectedEntity) {
119
- return contentTypes.find(_ => _.uid === relatedType)?.label;
120
- }
121
- }
122
- else {
123
- selectedEntity = {
124
- ...contentTypeEntities.find(_ => _.id === related),
125
- __collectionUid: relatedType
126
- };
127
- }
128
- return (0, parsers_1.extractRelatedItemLabel)(selectedEntity, contentTypesNameFields, { contentTypes });
129
- }, [contentTypeEntities, contentTypesNameFields, contentTypes]);
130
- const sanitizePayload = async (slugify, payload, data) => {
131
- const { related, relatedType, menuAttached, type, ...purePayload } = payload;
132
- const relatedId = related;
133
- const singleRelatedItem = isSingleSelected ? (0, lodash_1.first)(contentTypeEntities) : undefined;
134
- const relatedCollectionType = relatedType;
135
- const title = !!payload.title?.trim()
136
- ? payload.title
137
- : getDefaultTitle(related, relatedType, isSingleSelected);
138
- const uiRouterKey = await generateUiRouterKey(slugify, title, relatedId, relatedCollectionType);
139
- return {
140
- ...data,
141
- ...purePayload,
142
- title,
143
- type,
144
- menuAttached: (0, lodash_1.isNil)(menuAttached) ? false : menuAttached,
145
- path: type !== utils_1.navigationItemType.EXTERNAL ? purePayload.path || getDefaultPath() : undefined,
146
- externalPath: type === utils_1.navigationItemType.EXTERNAL ? purePayload.externalPath : undefined,
147
- related: type === utils_1.navigationItemType.INTERNAL ? relatedId : undefined,
148
- relatedType: type === utils_1.navigationItemType.INTERNAL ? relatedCollectionType : undefined,
149
- isSingle: isSingleSelected,
150
- singleRelatedItem,
151
- uiRouterKey,
152
- };
153
- };
154
- const onChange = ({ name, value }) => {
155
- formik.setValues(prevState => ({
156
- ...prevState,
157
- updated: true,
158
- [name]: value,
159
- }));
160
- if (name === "related" && relatedTypeSelectValue && formik.values.autoSync) {
161
- const { contentTypesNameFields, pathDefaultFields } = config;
162
- const selectedRelated = contentTypeEntities.find(({ id, __collectionUid }) => `${id}` === `${value}` && __collectionUid === relatedTypeSelectValue);
163
- const newPath = pathDefaultFields[relatedTypeSelectValue]?.reduce((acc, field) => {
164
- return acc ? acc : selectedRelated?.[field];
165
- }, null);
166
- const newTitle = (contentTypesNameFields[relatedTypeSelectValue] ?? []).concat(contentTypesNameFields.default || []).reduce((acc, field) => {
167
- return acc ? acc : selectedRelated?.[field];
168
- }, null);
169
- const batch = [];
170
- if (newPath) {
171
- batch.push({ name: "path", value: newPath });
172
- }
173
- if (newTitle) {
174
- batch.push({ name: "title", value: newTitle });
175
- }
176
- batch.forEach((next, i) => {
177
- setTimeout(() => {
178
- onChange(next);
179
- }, i * 100);
180
- });
181
- }
182
- if (name === "type") {
183
- formik.setErrors({});
184
- }
185
- if (!hasChanged) {
186
- setChangedState(true);
187
- }
188
- };
189
- const getDefaultPath = (0, react_1.useCallback)(() => {
190
- if (formik.values.type !== "INTERNAL")
191
- return "";
192
- (0, types_1.assertString)(relatedTypeSelectValue);
193
- const pathDefaultFields = (0, lodash_1.get)(config, ["pathDefaultFields", relatedTypeSelectValue], []);
194
- if ((0, lodash_1.isEmpty)(formik.values.path) && !(0, lodash_1.isEmpty)(pathDefaultFields)) {
195
- const selectedEntity = isSingleSelected
196
- ? (0, lodash_1.first)(contentTypeEntities)
197
- : contentTypeEntities.find(i => String(i.id) === relatedSelectValue);
198
- const pathDefaultValues = pathDefaultFields
199
- .map((field) => (0, lodash_1.get)(selectedEntity, field, ""))
200
- .filter(value => !(0, lodash_1.isNil)(value) && String(value).match(/^\S+$/));
201
- return String((0, lodash_1.first)(pathDefaultValues) || "");
202
- }
203
- return "";
204
- }, [relatedTypeSelectValue, formik, config]);
205
- const onAudienceChange = (0, react_1.useCallback)((value) => {
206
- onChange({ name: "audience", value });
207
- }, [onChange]);
208
- const onAdditionalFieldChange = (name, newValue, fieldType) => {
209
- const fieldsValue = formik.values.additionalFields;
210
- const value = {
211
- ...fieldsValue,
212
- [name]: fieldType === "media" && newValue ? JSON.stringify(newValue) : newValue
213
- };
214
- onChange({
215
- name: "additionalFields",
216
- value,
217
- });
218
- };
219
- const generateUiRouterKey = async (slugify, title, related, relatedType) => {
220
- if (title) {
221
- return (0, lodash_1.isString)(title) && !(0, lodash_1.isEmpty)(title) ? await slugify(title).then((0, fp_1.prop)("slug")) : undefined;
222
- }
223
- else if (related) {
224
- const relationTitle = (0, parsers_1.extractRelatedItemLabel)({
225
- ...contentTypeEntities.find(_ => String(_.id) === String(related)),
226
- __collectionUid: relatedType
227
- }, contentTypesNameFields, { contentTypes });
228
- return (0, lodash_1.isString)(relationTitle) && !(0, lodash_1.isEmpty)(relationTitle) ? await slugify(relationTitle).then((0, fp_1.prop)("slug")) : undefined;
229
- }
230
- return undefined;
231
- };
232
- const isSingleSelected = (0, react_1.useMemo)(() => relatedTypeSelectValue ? contentTypes.find(_ => _.uid === relatedTypeSelectValue)?.isSingle || false : false, [relatedTypeSelectValue, contentTypes]);
233
- const navigationItemTypeOptions = Object.keys(utils_1.navigationItemType).map((key) => {
234
- const value = utils_1.navigationItemType[key].toLowerCase();
235
- return {
236
- key,
237
- value: utils_1.navigationItemType[key],
238
- metadatas: {
239
- intlLabel: {
240
- id: (0, translations_1.getTradId)(`popup.item.form.type.${value}.label`),
241
- defaultMessage: (0, translations_1.getTradId)(`popup.item.form.type.${value}.label`),
242
- },
243
- hidden: false,
244
- disabled: false,
245
- }
246
- };
247
- });
248
- const relatedSelectOptions = (0, lodash_1.sortBy)(contentTypeEntities
249
- .filter((item) => {
250
- const usedContentTypeEntitiesOfSameType = usedContentTypeEntities
251
- .filter(uctItem => relatedTypeSelectValue === uctItem.__collectionUid);
252
- return !(0, lodash_1.find)(usedContentTypeEntitiesOfSameType, uctItem => (item.id === uctItem.id && uctItem.id !== formik.values.related));
253
- })
254
- .map((item) => {
255
- const label = appendLabelPublicationStatus((0, parsers_1.extractRelatedItemLabel)({
256
- ...item,
257
- __collectionUid: (0, lodash_1.get)(relatedTypeSelectValue, 'value', relatedTypeSelectValue),
258
- }, contentTypesNameFields, { contentTypes }), item);
259
- return ({
260
- key: (0, lodash_1.get)(item, 'id').toString(),
261
- metadatas: {
262
- intlLabel: {
263
- id: label || `${item.__collectionUid} ${item.id}`,
264
- defaultMessage: label || `${item.__collectionUid} ${item.id}`,
265
- },
266
- hidden: false,
267
- disabled: false,
268
- },
269
- value: item.id.toString(),
270
- label: label,
271
- });
272
- }), item => item.metadatas.intlLabel.id);
273
- const isExternal = formik.values.type === utils_1.navigationItemType.EXTERNAL;
274
- const pathSourceName = isExternal ? 'externalPath' : 'path';
275
- const submitDisabled = (formik.values.type === utils_1.navigationItemType.INTERNAL && !isSingleSelected && (0, lodash_1.isNil)(formik.values.related)) || isLoading;
276
- const onChangeRelatedType = ({ target: { name, value } }) => {
277
- const relatedTypeBeingReverted = data.relatedType && (data.relatedType.value === (0, lodash_1.get)(value, 'value', value));
278
- setContentTypeSearchQuery(undefined);
279
- formik.setValues(prevState => ({
280
- ...prevState,
281
- updated: true,
282
- related: relatedTypeBeingReverted ? data.related?.value : undefined,
283
- [name]: value,
284
- }));
285
- if (!hasChanged) {
286
- setChangedState(true);
287
- }
288
- };
289
- const relatedTypeSelectOptions = (0, react_1.useMemo)(() => (0, lodash_1.sortBy)(contentTypes
290
- .filter((contentType) => {
291
- if (contentType.isSingle) {
292
- if (relatedTypeSelectValue && [relatedTypeSelectValue, initialRelatedTypeSelected].includes(contentType.uid)) {
293
- return true;
294
- }
295
- return !usedContentTypesData.some((_) => _.__collectionUid === contentType.uid && _.__collectionUid !== formik.values.relatedType);
296
- }
297
- return true;
298
- })
299
- .map((item) => ({
300
- key: (0, lodash_1.get)(item, 'uid'),
301
- metadatas: {
302
- intlLabel: {
303
- id: (0, lodash_1.get)(item, 'label', (0, lodash_1.get)(item, 'name')),
304
- defaultMessage: (0, lodash_1.get)(item, 'label', (0, lodash_1.get)(item, 'name')),
305
- },
306
- disabled: false,
307
- hidden: false,
308
- },
309
- value: (0, lodash_1.get)(item, 'uid'),
310
- label: (0, lodash_1.get)(item, 'label', (0, lodash_1.get)(item, 'name')),
311
- })), item => item.metadatas.intlLabel.id), [contentTypes, usedContentTypesData, relatedTypeSelectValue]);
312
- const thereAreNoMoreContentTypes = (0, lodash_1.isEmpty)(relatedSelectOptions) && !contentTypeSearchQuery;
313
- (0, react_1.useEffect)(() => {
314
- const value = (0, lodash_1.get)(relatedSelectOptions, '0');
315
- if (isSingleSelected && relatedSelectOptions.length === 1 && !(0, lodash_1.isEqual)(value, relatedSelectValue)) {
316
- onChange({ name: "related", value });
317
- }
318
- }, [isSingleSelected, relatedSelectOptions]);
319
- (0, react_1.useEffect)(() => {
320
- const value = formik.values.relatedType;
321
- if (value) {
322
- const item = (0, lodash_1.find)(contentTypes, (_) => _.uid === value);
323
- if (item) {
324
- getContentTypeEntities({
325
- modelUID: item.uid,
326
- query: contentTypeSearchQuery,
327
- locale,
328
- }, item.plugin);
329
- }
330
- }
331
- }, [formik.values.relatedType, contentTypeSearchQuery]);
332
- const resetCopyItemFormErrors = () => {
333
- formik.setErrors({
334
- ...formik.errors,
335
- [itemLocaleCopyField]: null,
336
- });
337
- };
338
- const itemLocaleCopyField = `${inputsPrefix}i18n.locale`;
339
- const itemLocaleCopyValue = (0, lodash_1.get)(formik.values, itemLocaleCopyField);
340
- const onCopyFromLocale = (0, react_1.useCallback)(async (event) => {
341
- event.preventDefault();
342
- event.stopPropagation();
343
- setIsLoading(true);
344
- resetCopyItemFormErrors();
345
- try {
346
- const result = await readNavigationItemFromLocale({
347
- locale: itemLocaleCopyValue,
348
- structureId: data.structureId
349
- });
350
- if (result.type === utils_1.ResourceState.RESOLVED) {
351
- const { value: { related, ...rest } } = result;
352
- formik.setValues((prevState) => ({
353
- ...prevState,
354
- ...rest,
355
- }));
356
- if (related) {
357
- const relatedType = relatedTypeSelectOptions
358
- .find(({ value }) => value === related.__contentType)?.value;
359
- formik.setValues((prevState) => ({
360
- ...prevState,
361
- relatedType,
362
- [relatedFieldName]: related.id,
363
- }));
364
- }
365
- }
366
- if (result.type === utils_1.ResourceState.ERROR) {
367
- formik.setErrors({
368
- ...formik.errors,
369
- [itemLocaleCopyField]: (0, utils_1.getMessage)(result.errors[0]),
370
- });
371
- }
372
- }
373
- catch (error) {
374
- formik.setErrors({
375
- ...formik.errors,
376
- [itemLocaleCopyField]: (0, utils_1.getMessage)('popup.item.form.i18n.locale.error.generic'),
377
- });
378
- }
379
- setIsLoading(false);
380
- }, [setIsLoading, formik.setValues, formik.setErrors]);
381
- const onChangeLocaleCopy = (0, react_1.useCallback)(({ target: { value } }) => {
382
- resetCopyItemFormErrors();
383
- onChange({ name: itemLocaleCopyField, value });
384
- }, [onChange, itemLocaleCopyField]);
385
- const itemCopyProps = (0, react_1.useMemo)(() => ({
386
- intlLabel: {
387
- id: (0, translations_1.getTradId)('popup.item.form.i18n.locale.label'),
388
- defaultMessage: 'Copy details from'
389
- },
390
- placeholder: {
391
- id: (0, translations_1.getTradId)('popup.item.form.i18n.locale.placeholder'),
392
- defaultMessage: 'locale'
393
- },
394
- }), [translations_1.getTradId]);
395
- (0, react_1.useEffect)(() => {
396
- const value = formik.values.relatedType;
397
- const fetchContentTypeEntities = async () => {
398
- if (value) {
399
- const item = (0, lodash_1.find)(contentTypes, (_) => _.uid === value);
400
- if (item) {
401
- await getContentTypeEntities({
402
- modelUID: item.uid,
403
- query: contentTypeSearchQuery,
404
- locale,
405
- }, item.plugin);
406
- }
407
- }
408
- };
409
- fetchContentTypeEntities();
410
- }, [formik.values.relatedType, contentTypeSearchQuery]);
411
- return (react_1.default.createElement(react_1.default.Fragment, null,
412
- react_1.default.createElement("form", null,
413
- react_1.default.createElement(ModalLayout_1.ModalBody, null,
414
- react_1.default.createElement(Grid_1.Grid, { gap: 5 },
415
- react_1.default.createElement(Grid_1.GridItem, { key: "title", col: 12 },
416
- react_1.default.createElement(helper_plugin_1.GenericInput, { intlLabel: (0, translations_1.getTrad)('popup.item.form.title.label', 'Title'), name: "title", placeholder: (0, translations_1.getTrad)("e.g. Blog", 'e.g. Blog'), description: (0, translations_1.getTrad)('popup.item.form.title.placeholder', 'e.g. Blog'), type: "text", disabled: !canUpdate, error: formik.errors.title, onChange: ({ target: { name, value } }) => onChange({ name, value }), value: formik.values.title })),
417
- react_1.default.createElement(Grid_1.GridItem, { key: "type", col: 4, lg: 12 },
418
- react_1.default.createElement(helper_plugin_1.GenericInput, { intlLabel: (0, translations_1.getTrad)('popup.item.form.type.label', 'Internal link'), name: "type", options: navigationItemTypeOptions, type: "select", disabled: !canUpdate, error: formik.errors.type, onChange: ({ target: { name, value } }) => onChange({ name, value }), value: formik.values.type })),
419
- react_1.default.createElement(Grid_1.GridItem, { key: "menuAttached", col: 4, lg: 12 },
420
- react_1.default.createElement(helper_plugin_1.GenericInput, { intlLabel: (0, translations_1.getTrad)('popup.item.form.menuAttached.label', 'MenuAttached'), name: "menuAttached", type: "bool", error: formik.errors.menuAttached, onChange: ({ target: { name, value } }) => onChange({ name, value }), value: formik.values.menuAttached, disabled: !canUpdate || (config.cascadeMenuAttached ? !(data.isMenuAllowedLevel && data.parentAttachedToMenu) : false) })),
421
- react_1.default.createElement(Grid_1.GridItem, { key: "path", col: 12 },
422
- react_1.default.createElement(helper_plugin_1.GenericInput, { intlLabel: (0, translations_1.getTrad)(`popup.item.form.${pathSourceName}.label`, 'Path'), name: pathSourceName, placeholder: (0, translations_1.getTrad)(`popup.item.form.${pathSourceName}.placeholder`, 'e.g. Blog'), type: "text", disabled: !canUpdate, error: formik.errors[pathSourceName], onChange: ({ target: { name, value } }) => onChange({ name, value }), value: formik.values[pathSourceName], description: generatePreviewPath() })),
423
- formik.values.type === utils_1.navigationItemType.INTERNAL && (react_1.default.createElement(react_1.default.Fragment, null,
424
- react_1.default.createElement(Grid_1.GridItem, { key: "menuAttached", col: 12 },
425
- react_1.default.createElement(helper_plugin_1.GenericInput, { intlLabel: (0, translations_1.getTrad)('popup.item.form.autoSync.label', 'Read fields from related'), name: "autoSync", type: "bool", onChange: ({ target: { name, value } }) => onChange({ name, value }), value: formik.values.autoSync })),
426
- react_1.default.createElement(Grid_1.GridItem, { col: 6, lg: 12 },
427
- react_1.default.createElement(helper_plugin_1.GenericInput, { type: "select", intlLabel: (0, translations_1.getTrad)('popup.item.form.relatedType.label', 'Related Type'), placeholder: (0, translations_1.getTrad)('popup.item.form.relatedType.placeholder', 'Related Type'), name: "relatedType", error: formik.errors.relatedType, onChange: onChangeRelatedType, options: relatedTypeSelectOptions, value: formik.values.relatedType, disabled: isLoading || (0, lodash_1.isEmpty)(relatedTypeSelectOptions) || !canUpdate, description: !isLoading && (0, lodash_1.isEmpty)(relatedTypeSelectOptions)
428
- ? (0, translations_1.getTrad)('popup.item.form.relatedType.empty', 'There are no more content types')
429
- : undefined })),
430
- formik.values.relatedType && !isSingleSelected && (react_1.default.createElement(Grid_1.GridItem, { col: 6, lg: 12 },
431
- react_1.default.createElement(helper_plugin_1.GenericInput, { type: "select", intlLabel: (0, translations_1.getTrad)('popup.item.form.related.label', 'Related'), placeholder: (0, translations_1.getTrad)('popup.item.form.related.label', 'Related'), name: "related", error: formik.errors.related, onChange: ({ target: { name, value } }) => onChange({ name, value }), options: relatedSelectOptions, value: formik.values.related, disabled: isLoading || thereAreNoMoreContentTypes || !canUpdate, description: !isLoading && thereAreNoMoreContentTypes
432
- ? {
433
- id: (0, translations_1.getTradId)('popup.item.form.related.empty'),
434
- defaultMessage: 'There are no more entities',
435
- values: { contentTypeName: relatedTypeSelectValue },
436
- }
437
- : undefined }))))),
438
- additionalFields.map((additionalField) => {
439
- if (additionalField === 'audience') {
440
- return (react_1.default.createElement(Grid_1.GridItem, { key: "audience", col: 6, lg: 12 },
441
- react_1.default.createElement(Select_1.Select, { id: "audience", placeholder: (0, utils_1.getMessage)('popup.item.form.audience.placeholder'), label: (0, utils_1.getMessage)('popup.item.form.audience.label'), onChange: onAudienceChange, value: formik.values.audience, hint: !isLoading && (0, lodash_1.isEmpty)(audienceOptions)
442
- ? (0, utils_1.getMessage)('popup.item.form.audience.empty', 'There are no more audiences')
443
- : undefined, multi: true, withTags: true, disabled: (0, lodash_1.isEmpty)(audienceOptions) || !canUpdate }, audienceOptions.map(({ value, label }) => react_1.default.createElement(Select_1.Option, { key: value, value: value }, label)))));
444
- }
445
- else {
446
- return (react_1.default.createElement(Grid_1.GridItem, { key: additionalField.name, col: 6, lg: 12 },
447
- react_1.default.createElement(AdditionalFieldInput_1.default, { field: additionalField, isLoading: isLoading, onChange: onAdditionalFieldChange, value: (0, lodash_1.get)(formik.values, `additionalFields.${additionalField.name}`, null), disabled: !canUpdate, error: (0, lodash_1.get)(formik.errors, `additionalFields.${additionalField.name}`, null) })));
448
- }
449
- })),
450
- isI18nBootstrapAvailable ? (react_1.default.createElement(Grid_1.Grid, { gap: 5, paddingTop: 5 },
451
- react_1.default.createElement(Grid_1.GridItem, { col: 6, lg: 12 },
452
- react_1.default.createElement(helper_plugin_1.GenericInput, { ...itemCopyProps, type: "select", name: itemLocaleCopyField, error: (0, lodash_1.get)(formik.errors, itemLocaleCopyField), onChange: onChangeLocaleCopy, options: availableLocaleOptions, value: itemLocaleCopyValue, disabled: isLoading || !canUpdate })),
453
- canUpdate && (react_1.default.createElement(Grid_1.GridItem, { col: 6, lg: 12, paddingTop: 6 },
454
- react_1.default.createElement(Button_1.Button, { variant: "tertiary", onClick: onCopyFromLocale, disabled: isLoading || !itemLocaleCopyValue }, (0, utils_1.getMessage)('popup.item.form.i18n.locale.button')))))) : null)),
455
- react_1.default.createElement(NavigationItemPopupFooter_1.NavigationItemPopupFooter, { handleSubmit: formik.handleSubmit, handleCancel: onCancel, submitDisabled: submitDisabled, canUpdate: canUpdate })));
456
- };
457
- const appendLabelPublicationStatusFallback = () => "";
458
- const loadingAware = (action, isLoading) => async (input) => {
459
- try {
460
- isLoading(true);
461
- return await action(input);
462
- }
463
- catch (_) {
464
- }
465
- finally {
466
- isLoading(false);
467
- }
468
- };
469
- exports.default = NavigationItemForm;
470
- //# sourceMappingURL=index.js.map
@@ -1,99 +0,0 @@
1
- import { Audience, Effect, ContentTypeEntity, NavigationItemAdditionalField, NavigationItemAdditionalFieldValues, NavigationItemType, NavigationPluginConfig, PluginConfigNameFields, PluginPermissions, ToBeFixed, VoidEffect } from '../../../../../../types';
2
- import { Id } from 'strapi-typed';
3
- import { StrapiContentTypeSchema } from '../../../SettingsPage/types';
4
- export type FormEventTarget<TValue = unknown> = {
5
- name: string;
6
- value: TValue;
7
- };
8
- type GetContentTypeEntitiesPayload = {
9
- modelUID: string;
10
- query: ContentTypeSearchQuery;
11
- locale: ToBeFixed;
12
- };
13
- export type NavigationItemFormData = {
14
- isMenuAllowedLevel: boolean;
15
- levelPath: string;
16
- parentAttachedToMenu: boolean;
17
- audience?: Audience[];
18
- collapsed?: boolean;
19
- externalPath?: string | null;
20
- id?: Id;
21
- isParentAttachedToMenu?: boolean;
22
- items?: ToBeFixed[];
23
- menuAttached?: boolean;
24
- order?: number;
25
- parent?: ToBeFixed;
26
- path?: string | null;
27
- title?: string;
28
- type?: NavigationItemType;
29
- uiRouterKey?: string;
30
- updated?: boolean;
31
- viewId?: string;
32
- viewParentId: string | null;
33
- related?: {
34
- value: string;
35
- label: string;
36
- };
37
- relatedType?: {
38
- value: string;
39
- label: string;
40
- };
41
- relatedRef?: ToBeFixed;
42
- structureId: ToBeFixed;
43
- additionalFields?: ToBeFixed;
44
- };
45
- export type NavigationItemFormProps = {
46
- additionalFields: NavigationItemAdditionalField[];
47
- appendLabelPublicationStatus: (label: string, entity: ContentTypeEntity) => string;
48
- availableAudience: string[];
49
- contentTypeEntities: ContentTypeEntity[];
50
- contentTypes: StrapiContentTypeSchema[];
51
- contentTypesNameFields: PluginConfigNameFields;
52
- data: NavigationItemFormData;
53
- getContentTypeEntities: (value: GetContentTypeEntitiesPayload, plugin: string) => ContentTypeEntity;
54
- isLoading: boolean;
55
- locale: string;
56
- onCancel: VoidEffect;
57
- onSubmit: Effect<SanitizedFormPayload>;
58
- usedContentTypeEntities: ToBeFixed[];
59
- usedContentTypesData: ToBeFixed;
60
- config: NavigationPluginConfig;
61
- availableLocale: string[];
62
- readNavigationItemFromLocale: ToBeFixed;
63
- inputsPrefix: string;
64
- slugify: (q: string) => Promise<{
65
- slug: string;
66
- }>;
67
- permissions: Partial<PluginPermissions>;
68
- };
69
- export type ContentTypeSearchQuery = ToBeFixed;
70
- export type RawFormPayload = {
71
- type: NavigationItemType;
72
- autoSync?: boolean;
73
- related?: string;
74
- relatedType?: string;
75
- audience: Id[];
76
- menuAttached: boolean;
77
- title: string;
78
- externalPath: string | null;
79
- path: string | null;
80
- additionalFields: NavigationItemAdditionalFieldValues;
81
- updated: boolean;
82
- };
83
- export type SanitizedFormPayload = {
84
- title: string;
85
- type: NavigationItemType;
86
- menuAttached: boolean;
87
- path?: string | null;
88
- externalPath?: string | null;
89
- related: Id | undefined;
90
- relatedType: string | undefined;
91
- isSingle: boolean;
92
- singleRelatedItem: ContentTypeEntity | undefined;
93
- uiRouterKey: string | undefined;
94
- };
95
- export type Slugify = (q: string) => Promise<{
96
- slug: string;
97
- }>;
98
- export {};
99
- //# sourceMappingURL=types.d.ts.map
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1,28 +0,0 @@
1
- import * as yup from "yup";
2
- import { NavigationItemAdditionalField } from "../../../../../../../types";
3
- import { RawFormPayload } from "../types";
4
- export declare const schemaFactory: (isSingleSelected: boolean, additionalFields: NavigationItemAdditionalField[]) => import("yup/lib/object").OptionalObjectSchema<{
5
- autoSync: yup.BooleanSchema<boolean | undefined, Record<string, any>, boolean | undefined>;
6
- title: yup.default<string | undefined, Record<string, any>, string | undefined>;
7
- uiRouterKey: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
8
- type: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
9
- path: yup.default<string | undefined, Record<string, any>, string | undefined>;
10
- externalPath: yup.default<string | undefined, Record<string, any>, string | undefined>;
11
- menuAttached: yup.BooleanSchema<boolean | undefined, Record<string, any>, boolean | undefined>;
12
- relatedType: import("yup/lib/mixed").MixedSchema<any, Record<string, any>, any>;
13
- related: import("yup/lib/mixed").MixedSchema<any, Record<string, any>, any>;
14
- additionalFields: import("yup/lib/object").OptionalObjectSchema<{}, Record<string, any>, import("yup/lib/object").TypeOfShape<{}>>;
15
- }, Record<string, any>, import("yup/lib/object").TypeOfShape<{
16
- autoSync: yup.BooleanSchema<boolean | undefined, Record<string, any>, boolean | undefined>;
17
- title: yup.default<string | undefined, Record<string, any>, string | undefined>;
18
- uiRouterKey: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
19
- type: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
20
- path: yup.default<string | undefined, Record<string, any>, string | undefined>;
21
- externalPath: yup.default<string | undefined, Record<string, any>, string | undefined>;
22
- menuAttached: yup.BooleanSchema<boolean | undefined, Record<string, any>, boolean | undefined>;
23
- relatedType: import("yup/lib/mixed").MixedSchema<any, Record<string, any>, any>;
24
- related: import("yup/lib/mixed").MixedSchema<any, Record<string, any>, any>;
25
- additionalFields: import("yup/lib/object").OptionalObjectSchema<{}, Record<string, any>, import("yup/lib/object").TypeOfShape<{}>>;
26
- }>>;
27
- export declare const defaultValues: RawFormPayload;
28
- //# sourceMappingURL=form.d.ts.map