strapi-plugin-navigation 2.3.2 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. package/LICENSE.md +7 -0
  2. package/README.md +844 -0
  3. package/admin/src/components/AdditionalFieldInput/index.d.ts +2 -2
  4. package/admin/src/components/AdditionalFieldInput/index.js +36 -8
  5. package/admin/src/components/AdditionalFieldInput/types.d.ts +1 -1
  6. package/admin/src/components/DragButton/index.d.ts +3 -1
  7. package/admin/src/components/DragButton/index.js +2 -1
  8. package/admin/src/components/Item/ItemCardHeader/index.d.ts +1 -0
  9. package/admin/src/components/Item/ItemCardHeader/index.js +10 -5
  10. package/admin/src/components/Item/index.js +24 -4
  11. package/admin/src/components/NavigationItemList/index.js +1 -1
  12. package/admin/src/components/Search/index.d.ts +10 -4
  13. package/admin/src/components/Search/index.js +45 -6
  14. package/admin/src/components/TextArrayInput/index.d.ts +2 -1
  15. package/admin/src/pages/SettingsPage/common/const.d.ts +2 -0
  16. package/admin/src/pages/SettingsPage/common/const.js +5 -0
  17. package/admin/src/pages/SettingsPage/common/index.d.ts +2 -0
  18. package/admin/src/pages/SettingsPage/common/index.js +18 -0
  19. package/admin/src/pages/SettingsPage/components/CustomFieldForm/index.js +27 -12
  20. package/admin/src/pages/SettingsPage/components/CustomFieldTable/index.js +1 -1
  21. package/admin/src/pages/SettingsPage/components/DisableI18nModal/index.d.ts +2 -3
  22. package/admin/src/pages/SettingsPage/components/DisableI18nModal/index.js +12 -14
  23. package/admin/src/pages/SettingsPage/index.js +3 -2
  24. package/admin/src/pages/SettingsPage/utils/form.js +2 -1
  25. package/admin/src/pages/View/components/NavigationItemForm/index.js +49 -19
  26. package/admin/src/pages/View/components/NavigationItemForm/types.d.ts +2 -1
  27. package/admin/src/pages/View/components/NavigationItemForm/utils/form.js +2 -0
  28. package/admin/src/pages/View/index.js +20 -10
  29. package/admin/src/pages/View/utils/form.d.ts +1 -1
  30. package/admin/src/pages/View/utils/types.d.ts +3 -0
  31. package/admin/src/pages/View/utils/types.js +3 -0
  32. package/admin/src/translations/ca.json +1 -0
  33. package/admin/src/translations/en.json +3 -0
  34. package/admin/src/translations/fr.json +1 -0
  35. package/admin/src/utils/api.js +1 -1
  36. package/package.json +76 -101
  37. package/server/content-types/index.d.ts +2 -0
  38. package/server/content-types/navigation/index.d.ts +1 -0
  39. package/server/content-types/navigation/index.js +3 -1
  40. package/server/content-types/navigation/lifecycles.d.ts +3 -0
  41. package/server/content-types/navigation/lifecycles.js +7 -0
  42. package/server/content-types/navigation-item/index.d.ts +1 -0
  43. package/server/content-types/navigation-item/index.js +3 -1
  44. package/server/content-types/navigation-item/lifecycles.d.ts +3 -0
  45. package/server/content-types/navigation-item/lifecycles.js +7 -0
  46. package/server/controllers/admin.js +19 -16
  47. package/server/controllers/client.js +2 -2
  48. package/server/graphql/queries/render-navigation-child.d.ts +1 -1
  49. package/server/graphql/queries/render-navigation.d.ts +1 -1
  50. package/server/graphql/types/index.js +1 -0
  51. package/server/graphql/types/navigation-item-additional-field-media.d.ts +5 -0
  52. package/server/graphql/types/navigation-item-additional-field-media.js +13 -0
  53. package/server/graphql/types/navigation-item.js +3 -0
  54. package/server/i18n/utils.d.ts +1 -0
  55. package/server/i18n/utils.js +4 -0
  56. package/server/index.d.ts +2 -0
  57. package/server/services/admin.js +18 -8
  58. package/server/services/client.js +42 -11
  59. package/server/services/common.js +16 -0
  60. package/server/utils/constant.d.ts +3 -0
  61. package/server/utils/constant.js +21 -1
  62. package/server/utils/functions.d.ts +11 -3
  63. package/server/utils/functions.js +21 -3
  64. package/strapi-server.d.ts +2 -0
  65. package/tsconfig.tsbuildinfo +1 -1
  66. package/types/contentTypes.d.ts +7 -2
  67. package/types/controllers.d.ts +4 -3
  68. package/types/index.d.ts +1 -0
  69. package/types/index.js +1 -0
  70. package/types/lifecycle.d.ts +22 -0
  71. package/types/lifecycle.js +3 -0
  72. package/types/services.d.ts +13 -1
  73. package/__mocks__/strapi.d.ts +0 -3
  74. package/__mocks__/strapi.d.ts.map +0 -1
  75. package/__mocks__/strapi.js +0 -206
  76. package/__mocks__/strapi.js.map +0 -1
  77. package/admin/src/components/AdditionalFieldInput/index.d.ts.map +0 -1
  78. package/admin/src/components/AdditionalFieldInput/index.js.map +0 -1
  79. package/admin/src/components/AdditionalFieldInput/types.d.ts.map +0 -1
  80. package/admin/src/components/AdditionalFieldInput/types.js.map +0 -1
  81. package/admin/src/components/Alert/styles.d.ts.map +0 -1
  82. package/admin/src/components/Alert/styles.js.map +0 -1
  83. package/admin/src/components/CollapseButton/index.d.ts.map +0 -1
  84. package/admin/src/components/CollapseButton/index.js.map +0 -1
  85. package/admin/src/components/ConfirmationDialog/index.d.ts.map +0 -1
  86. package/admin/src/components/ConfirmationDialog/index.js.map +0 -1
  87. package/admin/src/components/DragButton/index.d.ts.map +0 -1
  88. package/admin/src/components/DragButton/index.js.map +0 -1
  89. package/admin/src/components/EmptyView/index.d.ts.map +0 -1
  90. package/admin/src/components/EmptyView/index.js.map +0 -1
  91. package/admin/src/components/Item/ItemCardBadge/index.d.ts.map +0 -1
  92. package/admin/src/components/Item/ItemCardBadge/index.js.map +0 -1
  93. package/admin/src/components/Item/ItemCardHeader/Wrapper.d.ts.map +0 -1
  94. package/admin/src/components/Item/ItemCardHeader/Wrapper.js.map +0 -1
  95. package/admin/src/components/Item/ItemCardHeader/icons.d.ts.map +0 -1
  96. package/admin/src/components/Item/ItemCardHeader/icons.js.map +0 -1
  97. package/admin/src/components/Item/ItemCardHeader/index.d.ts.map +0 -1
  98. package/admin/src/components/Item/ItemCardHeader/index.js.map +0 -1
  99. package/admin/src/components/Item/ItemCardRemovedOverlay/index.d.ts.map +0 -1
  100. package/admin/src/components/Item/ItemCardRemovedOverlay/index.js.map +0 -1
  101. package/admin/src/components/Item/Wrapper.d.ts.map +0 -1
  102. package/admin/src/components/Item/Wrapper.js.map +0 -1
  103. package/admin/src/components/Item/index.d.ts.map +0 -1
  104. package/admin/src/components/Item/index.js.map +0 -1
  105. package/admin/src/components/NavigationItemList/Wrapper.d.ts.map +0 -1
  106. package/admin/src/components/NavigationItemList/Wrapper.js.map +0 -1
  107. package/admin/src/components/NavigationItemList/index.d.ts.map +0 -1
  108. package/admin/src/components/NavigationItemList/index.js.map +0 -1
  109. package/admin/src/components/RestartAlert/index.d.ts.map +0 -1
  110. package/admin/src/components/RestartAlert/index.js.map +0 -1
  111. package/admin/src/components/Search/index.d.ts.map +0 -1
  112. package/admin/src/components/Search/index.js.map +0 -1
  113. package/admin/src/components/TextArrayInput/index.d.ts.map +0 -1
  114. package/admin/src/components/TextArrayInput/index.js.map +0 -1
  115. package/admin/src/components/icons/navigation.d.ts.map +0 -1
  116. package/admin/src/components/icons/navigation.js.map +0 -1
  117. package/admin/src/contexts/DataManagerContext.d.ts.map +0 -1
  118. package/admin/src/contexts/DataManagerContext.js.map +0 -1
  119. package/admin/src/hooks/useAllContentTypes.d.ts.map +0 -1
  120. package/admin/src/hooks/useAllContentTypes.js.map +0 -1
  121. package/admin/src/hooks/useDataManager.d.ts.map +0 -1
  122. package/admin/src/hooks/useDataManager.js.map +0 -1
  123. package/admin/src/hooks/useI18nCopyNavigationItemsModal.d.ts.map +0 -1
  124. package/admin/src/hooks/useI18nCopyNavigationItemsModal.js.map +0 -1
  125. package/admin/src/hooks/useNavigationConfig.d.ts.map +0 -1
  126. package/admin/src/hooks/useNavigationConfig.js.map +0 -1
  127. package/admin/src/hooks/useNavigationManager.d.ts.map +0 -1
  128. package/admin/src/hooks/useNavigationManager.js.map +0 -1
  129. package/admin/src/index.d.ts.map +0 -1
  130. package/admin/src/index.js.map +0 -1
  131. package/admin/src/pages/App/index.d.ts.map +0 -1
  132. package/admin/src/pages/App/index.js.map +0 -1
  133. package/admin/src/pages/DataManagerProvider/actions.d.ts.map +0 -1
  134. package/admin/src/pages/DataManagerProvider/actions.js.map +0 -1
  135. package/admin/src/pages/DataManagerProvider/index.d.ts.map +0 -1
  136. package/admin/src/pages/DataManagerProvider/index.js.map +0 -1
  137. package/admin/src/pages/DataManagerProvider/init.d.ts.map +0 -1
  138. package/admin/src/pages/DataManagerProvider/init.js.map +0 -1
  139. package/admin/src/pages/DataManagerProvider/reducer.d.ts.map +0 -1
  140. package/admin/src/pages/DataManagerProvider/reducer.js.map +0 -1
  141. package/admin/src/pages/NoAccessPage/index.d.ts.map +0 -1
  142. package/admin/src/pages/NoAccessPage/index.js.map +0 -1
  143. package/admin/src/pages/SettingsPage/components/CustomFieldForm/index.d.ts.map +0 -1
  144. package/admin/src/pages/SettingsPage/components/CustomFieldForm/index.js.map +0 -1
  145. package/admin/src/pages/SettingsPage/components/CustomFieldModal/index.d.ts.map +0 -1
  146. package/admin/src/pages/SettingsPage/components/CustomFieldModal/index.js.map +0 -1
  147. package/admin/src/pages/SettingsPage/components/CustomFieldTable/index.d.ts.map +0 -1
  148. package/admin/src/pages/SettingsPage/components/CustomFieldTable/index.js.map +0 -1
  149. package/admin/src/pages/SettingsPage/components/DisableI18nModal/index.d.ts.map +0 -1
  150. package/admin/src/pages/SettingsPage/components/DisableI18nModal/index.js.map +0 -1
  151. package/admin/src/pages/SettingsPage/index.d.ts.map +0 -1
  152. package/admin/src/pages/SettingsPage/index.js.map +0 -1
  153. package/admin/src/pages/SettingsPage/types.d.ts.map +0 -1
  154. package/admin/src/pages/SettingsPage/types.js.map +0 -1
  155. package/admin/src/pages/SettingsPage/utils/form.d.ts.map +0 -1
  156. package/admin/src/pages/SettingsPage/utils/form.js.map +0 -1
  157. package/admin/src/pages/SettingsPage/utils/functions.d.ts.map +0 -1
  158. package/admin/src/pages/SettingsPage/utils/functions.js.map +0 -1
  159. package/admin/src/pages/View/components/I18nCopyNavigationItems/index.d.ts.map +0 -1
  160. package/admin/src/pages/View/components/I18nCopyNavigationItems/index.js.map +0 -1
  161. package/admin/src/pages/View/components/NavigationContentHeader/index.d.ts.map +0 -1
  162. package/admin/src/pages/View/components/NavigationContentHeader/index.js.map +0 -1
  163. package/admin/src/pages/View/components/NavigationHeader/index.d.ts.map +0 -1
  164. package/admin/src/pages/View/components/NavigationHeader/index.js.map +0 -1
  165. package/admin/src/pages/View/components/NavigationHeader/styles.d.ts.map +0 -1
  166. package/admin/src/pages/View/components/NavigationHeader/styles.js.map +0 -1
  167. package/admin/src/pages/View/components/NavigationItemForm/index.d.ts.map +0 -1
  168. package/admin/src/pages/View/components/NavigationItemForm/index.js.map +0 -1
  169. package/admin/src/pages/View/components/NavigationItemForm/types.d.ts.map +0 -1
  170. package/admin/src/pages/View/components/NavigationItemForm/types.js.map +0 -1
  171. package/admin/src/pages/View/components/NavigationItemForm/utils/form.d.ts.map +0 -1
  172. package/admin/src/pages/View/components/NavigationItemForm/utils/form.js.map +0 -1
  173. package/admin/src/pages/View/components/NavigationItemPopup/NavigationItemPopupFooter.d.ts.map +0 -1
  174. package/admin/src/pages/View/components/NavigationItemPopup/NavigationItemPopupFooter.js.map +0 -1
  175. package/admin/src/pages/View/components/NavigationItemPopup/NavigationItemPopupHeader.d.ts.map +0 -1
  176. package/admin/src/pages/View/components/NavigationItemPopup/NavigationItemPopupHeader.js.map +0 -1
  177. package/admin/src/pages/View/components/NavigationItemPopup/index.d.ts.map +0 -1
  178. package/admin/src/pages/View/components/NavigationItemPopup/index.js.map +0 -1
  179. package/admin/src/pages/View/components/NavigationManager/AllNavigations/icons.d.ts.map +0 -1
  180. package/admin/src/pages/View/components/NavigationManager/AllNavigations/icons.js.map +0 -1
  181. package/admin/src/pages/View/components/NavigationManager/AllNavigations/index.d.ts.map +0 -1
  182. package/admin/src/pages/View/components/NavigationManager/AllNavigations/index.js.map +0 -1
  183. package/admin/src/pages/View/components/NavigationManager/DeletionConfirm/index.d.ts.map +0 -1
  184. package/admin/src/pages/View/components/NavigationManager/DeletionConfirm/index.js.map +0 -1
  185. package/admin/src/pages/View/components/NavigationManager/ErrorDetails/index.d.ts.map +0 -1
  186. package/admin/src/pages/View/components/NavigationManager/ErrorDetails/index.js.map +0 -1
  187. package/admin/src/pages/View/components/NavigationManager/Footer/index.d.ts.map +0 -1
  188. package/admin/src/pages/View/components/NavigationManager/Footer/index.js.map +0 -1
  189. package/admin/src/pages/View/components/NavigationManager/Form/index.d.ts.map +0 -1
  190. package/admin/src/pages/View/components/NavigationManager/Form/index.js.map +0 -1
  191. package/admin/src/pages/View/components/NavigationManager/NavigationUpdate/index.d.ts.map +0 -1
  192. package/admin/src/pages/View/components/NavigationManager/NavigationUpdate/index.js.map +0 -1
  193. package/admin/src/pages/View/components/NavigationManager/NewNavigation/index.d.ts.map +0 -1
  194. package/admin/src/pages/View/components/NavigationManager/NewNavigation/index.js.map +0 -1
  195. package/admin/src/pages/View/components/NavigationManager/index.d.ts.map +0 -1
  196. package/admin/src/pages/View/components/NavigationManager/index.js.map +0 -1
  197. package/admin/src/pages/View/components/NavigationManager/types.d.ts.map +0 -1
  198. package/admin/src/pages/View/components/NavigationManager/types.js.map +0 -1
  199. package/admin/src/pages/View/index.d.ts.map +0 -1
  200. package/admin/src/pages/View/index.js.map +0 -1
  201. package/admin/src/pages/View/utils/form.d.ts.map +0 -1
  202. package/admin/src/pages/View/utils/form.js.map +0 -1
  203. package/admin/src/pages/View/utils/index.d.ts.map +0 -1
  204. package/admin/src/pages/View/utils/index.js.map +0 -1
  205. package/admin/src/pages/View/utils/parsers.d.ts.map +0 -1
  206. package/admin/src/pages/View/utils/parsers.js.map +0 -1
  207. package/admin/src/permissions.d.ts.map +0 -1
  208. package/admin/src/permissions.js.map +0 -1
  209. package/admin/src/pluginId.d.ts.map +0 -1
  210. package/admin/src/pluginId.js.map +0 -1
  211. package/admin/src/translations/index.d.ts.map +0 -1
  212. package/admin/src/translations/index.js.map +0 -1
  213. package/admin/src/utils/api.d.ts.map +0 -1
  214. package/admin/src/utils/api.js.map +0 -1
  215. package/admin/src/utils/enums.d.ts.map +0 -1
  216. package/admin/src/utils/enums.js.map +0 -1
  217. package/admin/src/utils/functions.d.ts.map +0 -1
  218. package/admin/src/utils/functions.js.map +0 -1
  219. package/admin/src/utils/index.d.ts.map +0 -1
  220. package/admin/src/utils/index.js.map +0 -1
  221. package/permissions.d.ts.map +0 -1
  222. package/permissions.js.map +0 -1
  223. package/server/bootstrap/index.d.ts.map +0 -1
  224. package/server/bootstrap/index.js.map +0 -1
  225. package/server/config/index.d.ts.map +0 -1
  226. package/server/config/index.js.map +0 -1
  227. package/server/config/setupStrategy.d.ts.map +0 -1
  228. package/server/config/setupStrategy.js.map +0 -1
  229. package/server/content-types/audience/index.d.ts.map +0 -1
  230. package/server/content-types/audience/index.js.map +0 -1
  231. package/server/content-types/audience/schema.d.ts.map +0 -1
  232. package/server/content-types/audience/schema.js.map +0 -1
  233. package/server/content-types/index.d.ts.map +0 -1
  234. package/server/content-types/index.js.map +0 -1
  235. package/server/content-types/navigation/index.d.ts.map +0 -1
  236. package/server/content-types/navigation/index.js.map +0 -1
  237. package/server/content-types/navigation/schema.d.ts.map +0 -1
  238. package/server/content-types/navigation/schema.js.map +0 -1
  239. package/server/content-types/navigation-item/index.d.ts.map +0 -1
  240. package/server/content-types/navigation-item/index.js.map +0 -1
  241. package/server/content-types/navigation-item/schema.d.ts.map +0 -1
  242. package/server/content-types/navigation-item/schema.js.map +0 -1
  243. package/server/content-types/navigations-items-related/index.d.ts.map +0 -1
  244. package/server/content-types/navigations-items-related/index.js.map +0 -1
  245. package/server/content-types/navigations-items-related/schema.d.ts.map +0 -1
  246. package/server/content-types/navigations-items-related/schema.js.map +0 -1
  247. package/server/controllers/admin.d.ts.map +0 -1
  248. package/server/controllers/admin.js.map +0 -1
  249. package/server/controllers/client.d.ts.map +0 -1
  250. package/server/controllers/client.js.map +0 -1
  251. package/server/controllers/index.d.ts.map +0 -1
  252. package/server/controllers/index.js.map +0 -1
  253. package/server/destroy.d.ts.map +0 -1
  254. package/server/destroy.js.map +0 -1
  255. package/server/graphql/config.d.ts.map +0 -1
  256. package/server/graphql/config.js.map +0 -1
  257. package/server/graphql/index.d.ts.map +0 -1
  258. package/server/graphql/index.js.map +0 -1
  259. package/server/graphql/queries/index.d.ts.map +0 -1
  260. package/server/graphql/queries/index.js.map +0 -1
  261. package/server/graphql/queries/render-navigation-child.d.ts.map +0 -1
  262. package/server/graphql/queries/render-navigation-child.js.map +0 -1
  263. package/server/graphql/queries/render-navigation.d.ts.map +0 -1
  264. package/server/graphql/queries/render-navigation.js.map +0 -1
  265. package/server/graphql/resolvers-config.d.ts.map +0 -1
  266. package/server/graphql/resolvers-config.js.map +0 -1
  267. package/server/graphql/setupStrategy.d.ts.map +0 -1
  268. package/server/graphql/setupStrategy.js.map +0 -1
  269. package/server/graphql/types/content-types-name-fields.d.ts.map +0 -1
  270. package/server/graphql/types/content-types-name-fields.js.map +0 -1
  271. package/server/graphql/types/content-types.d.ts.map +0 -1
  272. package/server/graphql/types/content-types.js.map +0 -1
  273. package/server/graphql/types/create-navigation-item.d.ts.map +0 -1
  274. package/server/graphql/types/create-navigation-item.js.map +0 -1
  275. package/server/graphql/types/create-navigation-related.d.ts.map +0 -1
  276. package/server/graphql/types/create-navigation-related.js.map +0 -1
  277. package/server/graphql/types/create-navigation.d.ts.map +0 -1
  278. package/server/graphql/types/create-navigation.js.map +0 -1
  279. package/server/graphql/types/index.d.ts.map +0 -1
  280. package/server/graphql/types/index.js.map +0 -1
  281. package/server/graphql/types/navigation-config.d.ts.map +0 -1
  282. package/server/graphql/types/navigation-config.js.map +0 -1
  283. package/server/graphql/types/navigation-details.d.ts.map +0 -1
  284. package/server/graphql/types/navigation-details.js.map +0 -1
  285. package/server/graphql/types/navigation-item-related-data.d.ts.map +0 -1
  286. package/server/graphql/types/navigation-item-related-data.js.map +0 -1
  287. package/server/graphql/types/navigation-item-related.d.ts.map +0 -1
  288. package/server/graphql/types/navigation-item-related.js.map +0 -1
  289. package/server/graphql/types/navigation-item.d.ts.map +0 -1
  290. package/server/graphql/types/navigation-item.js.map +0 -1
  291. package/server/graphql/types/navigation-render-type.d.ts.map +0 -1
  292. package/server/graphql/types/navigation-render-type.js.map +0 -1
  293. package/server/graphql/types/navigation.d.ts.map +0 -1
  294. package/server/graphql/types/navigation.js.map +0 -1
  295. package/server/i18n/constant.d.ts.map +0 -1
  296. package/server/i18n/constant.js.map +0 -1
  297. package/server/i18n/errors.d.ts.map +0 -1
  298. package/server/i18n/errors.js.map +0 -1
  299. package/server/i18n/graphQLEnhancers.d.ts.map +0 -1
  300. package/server/i18n/graphQLEnhancers.js.map +0 -1
  301. package/server/i18n/index.d.ts.map +0 -1
  302. package/server/i18n/index.js.map +0 -1
  303. package/server/i18n/navigationSetupStrategy.d.ts.map +0 -1
  304. package/server/i18n/navigationSetupStrategy.js.map +0 -1
  305. package/server/i18n/serviceEnhancers.d.ts.map +0 -1
  306. package/server/i18n/serviceEnhancers.js.map +0 -1
  307. package/server/i18n/types.d.ts.map +0 -1
  308. package/server/i18n/types.js.map +0 -1
  309. package/server/i18n/utils.d.ts.map +0 -1
  310. package/server/i18n/utils.js.map +0 -1
  311. package/server/index.d.ts.map +0 -1
  312. package/server/index.js.map +0 -1
  313. package/server/navigation/index.d.ts.map +0 -1
  314. package/server/navigation/index.js.map +0 -1
  315. package/server/navigation/setupStrategy.d.ts.map +0 -1
  316. package/server/navigation/setupStrategy.js.map +0 -1
  317. package/server/register/index.d.ts.map +0 -1
  318. package/server/register/index.js.map +0 -1
  319. package/server/routes/admin.d.ts.map +0 -1
  320. package/server/routes/admin.js.map +0 -1
  321. package/server/routes/client.d.ts.map +0 -1
  322. package/server/routes/client.js.map +0 -1
  323. package/server/routes/index.d.ts.map +0 -1
  324. package/server/routes/index.js.map +0 -1
  325. package/server/services/__tests__/service.test.d.ts +0 -2
  326. package/server/services/__tests__/service.test.d.ts.map +0 -1
  327. package/server/services/__tests__/service.test.js +0 -131
  328. package/server/services/__tests__/service.test.js.map +0 -1
  329. package/server/services/admin.d.ts.map +0 -1
  330. package/server/services/admin.js.map +0 -1
  331. package/server/services/client.d.ts.map +0 -1
  332. package/server/services/client.js.map +0 -1
  333. package/server/services/common.d.ts.map +0 -1
  334. package/server/services/common.js.map +0 -1
  335. package/server/services/index.d.ts.map +0 -1
  336. package/server/services/index.js.map +0 -1
  337. package/server/utils/__tests__/functions.test.d.ts +0 -2
  338. package/server/utils/__tests__/functions.test.d.ts.map +0 -1
  339. package/server/utils/__tests__/functions.test.js +0 -153
  340. package/server/utils/__tests__/functions.test.js.map +0 -1
  341. package/server/utils/constant.d.ts.map +0 -1
  342. package/server/utils/constant.js.map +0 -1
  343. package/server/utils/functions.d.ts.map +0 -1
  344. package/server/utils/functions.js.map +0 -1
  345. package/server/utils/index.d.ts.map +0 -1
  346. package/server/utils/index.js.map +0 -1
  347. package/setup-package.d.ts +0 -2
  348. package/setup-package.d.ts.map +0 -1
  349. package/setup-package.js +0 -19
  350. package/setup-package.js.map +0 -1
  351. package/strapi-admin.d.ts.map +0 -1
  352. package/strapi-admin.js.map +0 -1
  353. package/strapi-server.d.ts.map +0 -1
  354. package/strapi-server.js.map +0 -1
  355. package/types/bootstrap.d.ts.map +0 -1
  356. package/types/bootstrap.js.map +0 -1
  357. package/types/config.d.ts.map +0 -1
  358. package/types/config.js.map +0 -1
  359. package/types/contentTypes.d.ts.map +0 -1
  360. package/types/contentTypes.js.map +0 -1
  361. package/types/controllers.d.ts.map +0 -1
  362. package/types/controllers.js.map +0 -1
  363. package/types/graphQL.d.ts.map +0 -1
  364. package/types/graphQL.js.map +0 -1
  365. package/types/i18n.d.ts.map +0 -1
  366. package/types/i18n.js.map +0 -1
  367. package/types/index.d.ts.map +0 -1
  368. package/types/index.js.map +0 -1
  369. package/types/services.d.ts.map +0 -1
  370. package/types/services.js.map +0 -1
  371. package/types/utils.d.ts.map +0 -1
  372. package/types/utils.js.map +0 -1
  373. package/utils/InvalidParamNavigationError.d.ts.map +0 -1
  374. package/utils/InvalidParamNavigationError.js.map +0 -1
  375. package/utils/NavigationError.d.ts.map +0 -1
  376. package/utils/NavigationError.js.map +0 -1
@@ -47,9 +47,9 @@ const utils_2 = require("../../../../utils");
47
47
  const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading, inputsPrefix, data, contentTypes = [], contentTypeEntities = [], usedContentTypeEntities = [], availableAudience = [], additionalFields = [], contentTypesNameFields = {}, onSubmit, onCancel, getContentTypeEntities, usedContentTypesData, appendLabelPublicationStatus = appendLabelPublicationStatusFallback, locale, readNavigationItemFromLocale, slugify, permissions = {}, }) => {
48
48
  const [isLoading, setIsLoading] = (0, react_1.useState)(isPreloading);
49
49
  const [hasBeenInitialized, setInitializedState] = (0, react_1.useState)(false);
50
+ const [autoSync, setAutoSync] = (0, react_1.useState)(true);
50
51
  const [hasChanged, setChangedState] = (0, react_1.useState)(false);
51
52
  const [contentTypeSearchQuery, setContentTypeSearchQuery] = (0, react_1.useState)(undefined);
52
- const [contentTypeSearchInputValue, setContentTypeSearchInputValue] = (0, react_1.useState)(undefined);
53
53
  const { canUpdate } = permissions;
54
54
  const formik = (0, formik_1.useFormik)({
55
55
  initialValues: formDefinition.defaultValues,
@@ -61,14 +61,17 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
61
61
  const relatedTypeSelectValue = formik.values.relatedType;
62
62
  const relatedSelectValue = formik.values.related;
63
63
  const isI18nBootstrapAvailable = !!(config.i18nEnabled && availableLocale && availableLocale.length);
64
- const availableLocaleOptions = (0, react_1.useMemo)(() => availableLocale.map((locale) => ({
64
+ const availableLocaleOptions = (0, react_1.useMemo)(() => availableLocale.map((locale, index) => ({
65
+ key: `${locale}-${index}`,
65
66
  value: locale,
66
67
  label: locale,
67
68
  metadatas: {
68
69
  intlLabel: {
69
70
  id: `i18n.locale.${locale}`,
70
71
  defaultMessage: locale,
71
- }
72
+ },
73
+ hidden: false,
74
+ disabled: false,
72
75
  },
73
76
  })), [availableLocale]);
74
77
  const relatedFieldName = `${inputsPrefix}related`;
@@ -107,7 +110,7 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
107
110
  values: { value }
108
111
  };
109
112
  }
110
- return null;
113
+ return undefined;
111
114
  };
112
115
  const getDefaultTitle = (0, react_1.useCallback)((related, relatedType, isSingleSelected) => {
113
116
  let selectedEntity;
@@ -155,6 +158,28 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
155
158
  updated: true,
156
159
  [name]: value,
157
160
  }));
161
+ if (name === "related" && relatedTypeSelectValue && autoSync) {
162
+ const { contentTypesNameFields, pathDefaultFields } = config;
163
+ const selectedRelated = contentTypeEntities.find(({ id, __collectionUid }) => `${id}` === `${value}` && __collectionUid === relatedTypeSelectValue);
164
+ const newPath = pathDefaultFields[relatedTypeSelectValue]?.reduce((acc, field) => {
165
+ return acc ? acc : selectedRelated?.[field];
166
+ }, null);
167
+ const newTitle = (contentTypesNameFields[relatedTypeSelectValue] ?? []).concat(contentTypesNameFields.default || []).reduce((acc, field) => {
168
+ return acc ? acc : selectedRelated?.[field];
169
+ }, null);
170
+ const batch = [];
171
+ if (newPath) {
172
+ batch.push({ name: "path", value: newPath });
173
+ }
174
+ if (newTitle) {
175
+ batch.push({ name: "title", value: newTitle });
176
+ }
177
+ batch.forEach((next, i) => {
178
+ setTimeout(() => {
179
+ onChange(next);
180
+ }, i * 100);
181
+ });
182
+ }
158
183
  if (name === "type") {
159
184
  formik.setErrors({});
160
185
  }
@@ -181,9 +206,12 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
181
206
  const onAudienceChange = (0, react_1.useCallback)((value) => {
182
207
  onChange({ name: "audience", value });
183
208
  }, [onChange]);
184
- const onAdditionalFieldChange = (name, newValue) => {
209
+ const onAdditionalFieldChange = (name, newValue, fieldType) => {
185
210
  const fieldsValue = formik.values.additionalFields;
186
- const value = { ...fieldsValue, [name]: newValue };
211
+ const value = {
212
+ ...fieldsValue,
213
+ [name]: fieldType === "media" && newValue ? JSON.stringify(newValue) : newValue
214
+ };
187
215
  onChange({
188
216
  name: "additionalFields",
189
217
  value,
@@ -212,7 +240,9 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
212
240
  intlLabel: {
213
241
  id: (0, translations_1.getTradId)(`popup.item.form.type.${value}.label`),
214
242
  defaultMessage: (0, translations_1.getTradId)(`popup.item.form.type.${value}.label`),
215
- }
243
+ },
244
+ hidden: false,
245
+ disabled: false,
216
246
  }
217
247
  };
218
248
  });
@@ -228,29 +258,25 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
228
258
  __collectionUid: (0, lodash_1.get)(relatedTypeSelectValue, 'value', relatedTypeSelectValue),
229
259
  }, contentTypesNameFields, { contentTypes }), item);
230
260
  return ({
231
- key: (0, lodash_1.get)(item, 'id'),
261
+ key: (0, lodash_1.get)(item, 'id').toString(),
232
262
  metadatas: {
233
263
  intlLabel: {
234
264
  id: label || `${item.__collectionUid} ${item.id}`,
235
265
  defaultMessage: label || `${item.__collectionUid} ${item.id}`,
236
- }
266
+ },
267
+ hidden: false,
268
+ disabled: false,
237
269
  },
238
- value: item.id,
270
+ value: item.id.toString(),
239
271
  label: label,
240
272
  });
241
273
  }), item => item.metadatas.intlLabel.id);
242
274
  const isExternal = formik.values.type === utils_1.navigationItemType.EXTERNAL;
243
275
  const pathSourceName = isExternal ? 'externalPath' : 'path';
244
276
  const submitDisabled = (formik.values.type === utils_1.navigationItemType.INTERNAL && !isSingleSelected && (0, lodash_1.isNil)(formik.values.related)) || isLoading;
245
- const debouncedSearch = (0, react_1.useCallback)((0, lodash_1.debounce)(nextValue => setContentTypeSearchQuery(nextValue), 500), []);
246
- const debounceContentTypeSearchQuery = (value) => {
247
- setContentTypeSearchInputValue(value);
248
- debouncedSearch(value);
249
- };
250
277
  const onChangeRelatedType = ({ target: { name, value } }) => {
251
278
  const relatedTypeBeingReverted = data.relatedType && (data.relatedType.value === (0, lodash_1.get)(value, 'value', value));
252
279
  setContentTypeSearchQuery(undefined);
253
- setContentTypeSearchInputValue(undefined);
254
280
  formik.setValues(prevState => ({
255
281
  ...prevState,
256
282
  updated: true,
@@ -277,7 +303,9 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
277
303
  intlLabel: {
278
304
  id: (0, lodash_1.get)(item, 'label', (0, lodash_1.get)(item, 'name')),
279
305
  defaultMessage: (0, lodash_1.get)(item, 'label', (0, lodash_1.get)(item, 'name')),
280
- }
306
+ },
307
+ disabled: false,
308
+ hidden: false,
281
309
  },
282
310
  value: (0, lodash_1.get)(item, 'uid'),
283
311
  label: (0, lodash_1.get)(item, 'label', (0, lodash_1.get)(item, 'name')),
@@ -386,7 +414,7 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
386
414
  react_1.default.createElement(ModalLayout_1.ModalBody, null,
387
415
  react_1.default.createElement(Grid_1.Grid, { gap: 5 },
388
416
  react_1.default.createElement(Grid_1.GridItem, { key: "title", col: 12 },
389
- react_1.default.createElement(helper_plugin_1.GenericInput, { autoFocused: true, 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(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 })),
390
418
  react_1.default.createElement(Grid_1.GridItem, { key: "type", col: 4, lg: 12 },
391
419
  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 })),
392
420
  react_1.default.createElement(Grid_1.GridItem, { key: "menuAttached", col: 4, lg: 12 },
@@ -394,12 +422,14 @@ const NavigationItemForm = ({ config, availableLocale, isLoading: isPreloading,
394
422
  react_1.default.createElement(Grid_1.GridItem, { key: "path", col: 12 },
395
423
  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() })),
396
424
  formik.values.type === utils_1.navigationItemType.INTERNAL && (react_1.default.createElement(react_1.default.Fragment, null,
425
+ react_1.default.createElement(Grid_1.GridItem, { key: "menuAttached", col: 12 },
426
+ 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: { value } }) => setAutoSync(value), value: autoSync })),
397
427
  react_1.default.createElement(Grid_1.GridItem, { col: 6, lg: 12 },
398
428
  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)
399
429
  ? (0, translations_1.getTrad)('popup.item.form.relatedType.empty', 'There are no more content types')
400
430
  : undefined })),
401
431
  formik.values.relatedType && !isSingleSelected && (react_1.default.createElement(Grid_1.GridItem, { col: 6, lg: 12 },
402
- 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 }), onInputChange: debounceContentTypeSearchQuery, inputValue: contentTypeSearchInputValue, options: relatedSelectOptions, value: formik.values.related, disabled: isLoading || thereAreNoMoreContentTypes || !canUpdate, description: !isLoading && thereAreNoMoreContentTypes
432
+ 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
403
433
  ? {
404
434
  id: (0, translations_1.getTradId)('popup.item.form.related.empty'),
405
435
  defaultMessage: 'There are no more entities',
@@ -40,6 +40,7 @@ export type NavigationItemFormData = {
40
40
  };
41
41
  relatedRef?: ToBeFixed;
42
42
  structureId: ToBeFixed;
43
+ additionalFields?: ToBeFixed;
43
44
  };
44
45
  export type NavigationItemFormProps = {
45
46
  additionalFields: NavigationItemAdditionalField[];
@@ -63,7 +64,7 @@ export type NavigationItemFormProps = {
63
64
  slugify: (q: string) => Promise<{
64
65
  slug: string;
65
66
  }>;
66
- permissions: PluginPermissions;
67
+ permissions: Partial<PluginPermissions>;
67
68
  };
68
69
  export type ContentTypeSearchQuery = ToBeFixed;
69
70
  export type RawFormPayload = {
@@ -89,6 +89,8 @@ const schemaFactory = (isSingleSelected, additionalFields) => {
89
89
  value = yup.array().of(yup.string());
90
90
  else if (current.type === 'select' && !current.multi)
91
91
  value = yup.string();
92
+ else if (current.type === 'media')
93
+ value = yup.mixed();
92
94
  else
93
95
  throw new Error(`Type "${current.type}" is unsupported by custom fields`);
94
96
  if (current.required)
@@ -66,7 +66,7 @@ const View = () => {
66
66
  const openI18nCopyModalOpened = (0, react_1.useCallback)(() => { i18nCopySourceLocale && setI18nCopyModalOpened(true); }, [setI18nCopyModalOpened, i18nCopySourceLocale]);
67
67
  const [activeNavigationItem, setActiveNavigationItemState] = (0, react_1.useState)({});
68
68
  const { formatMessage } = (0, react_intl_1.useIntl)();
69
- const [searchValue, setSearchValue] = (0, react_1.useState)('');
69
+ const [{ value: searchValue, index: searchIndex }, setSearchValue] = (0, react_1.useState)({ value: '' });
70
70
  const [structureChanged, setStructureChanged] = (0, react_1.useState)(false);
71
71
  const isSearchEmpty = (0, lodash_1.isEmpty)(searchValue);
72
72
  const normalisedSearchValue = (searchValue || '').toLowerCase();
@@ -114,14 +114,23 @@ const View = () => {
114
114
  handleChangeNavigationData(changedStructure, true);
115
115
  setStructureChanged(true);
116
116
  };
117
- const filteredListFactory = (items, doUse) => items.reduce((acc, item) => {
118
- const subItems = !(0, lodash_1.isEmpty)(item.items) ? filteredListFactory(item.items, doUse) : [];
119
- if (doUse(item))
120
- return [item, ...subItems, ...acc];
121
- else
122
- return [...subItems, ...acc];
123
- }, []);
124
- const filteredList = !isSearchEmpty ? filteredListFactory(changedActiveNavigation.items, (item) => (item?.title || '').toLowerCase().includes(normalisedSearchValue)) : [];
117
+ const filteredListFactory = (items, doUse, activeIndex) => {
118
+ const filteredItems = items.reduce((acc, item) => {
119
+ const subItems = !(0, lodash_1.isEmpty)(item.items) ? filteredListFactory(item.items, doUse) : [];
120
+ if (doUse(item))
121
+ return [item, ...subItems, ...acc];
122
+ else
123
+ return [...subItems, ...acc];
124
+ }, []);
125
+ if (activeIndex !== undefined) {
126
+ const index = activeIndex % filteredItems.length;
127
+ return filteredItems.map((item, currentIndex) => {
128
+ return index === currentIndex ? ({ ...item, isSearchActive: true }) : item;
129
+ });
130
+ }
131
+ return filteredItems;
132
+ };
133
+ const filteredList = !isSearchEmpty ? filteredListFactory(changedActiveNavigation.items.map(_ => ({ ..._ })), (item) => (item?.title || '').toLowerCase().includes(normalisedSearchValue), normalisedSearchValue ? searchIndex : undefined) : [];
125
134
  const changeCollapseItemDeep = (item, isCollapsed) => {
126
135
  if (item.collapsed !== isCollapsed) {
127
136
  return {
@@ -173,6 +182,7 @@ const View = () => {
173
182
  ...item,
174
183
  collapsed: !item.collapsed,
175
184
  updated: true,
185
+ isSearchActive: false,
176
186
  });
177
187
  };
178
188
  const handleItemEdit = (item, levelPath = '', parentAttachedToMenu = true) => {
@@ -191,7 +201,7 @@ const View = () => {
191
201
  };
192
202
  const handleChangeNavigationSelection = (...args) => {
193
203
  handleChangeSelection(...args);
194
- setSearchValue('');
204
+ setSearchValue({ value: '', index: 0 });
195
205
  };
196
206
  const endActions = [
197
207
  {
@@ -1,2 +1,2 @@
1
- export function checkFormValidity(data: any, schema: any): Promise<Record<string, import("@strapi/helper-plugin/dist/types").TranslationMessage> | null>;
1
+ export function checkFormValidity(data: any, schema: any): Promise<Record<string, import("@strapi/helper-plugin").TranslationMessage> | null>;
2
2
  //# sourceMappingURL=form.d.ts.map
@@ -0,0 +1,3 @@
1
+ import { GenericInputProps } from "@strapi/helper-plugin";
2
+ export type GenericInputOnChangeInput = Parameters<GenericInputProps["onChange"]>[0];
3
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -27,6 +27,7 @@
27
27
  "notification.navigation.submit": "S'han desat els canvis de navegació",
28
28
  "pages.main.header.localization.select.placeholder": "Seleccioneu la configuració regional",
29
29
  "pages.main.search.placeholder": "Escriviu per començar a cercar...",
30
+ "pages.main.search.subLabel": "appuyez sur ENTER pour mettre en surbrillance l'élément suivant",
30
31
  "pages.settings.actions.disableI18n.confirmation.confirm": "entenc",
31
32
  "pages.settings.actions.disableI18n.confirmation.description.line1": "Esteu desactivant la internacionalització per a la navegació. Les navegacions per a configuracions regionals diferents de les predeterminades no estan disponibles per a la visualització i modificacions mitjançant aquesta extensió.",
32
33
  "pages.settings.actions.disableI18n.confirmation.description.line2": "Podeu optar per eliminar les navegacions per a altres configuracions regionals.",
@@ -15,6 +15,7 @@
15
15
  "popup.item.header.edit": "Edit navigation item",
16
16
  "popup.item.header.new": "New navigation item",
17
17
  "popup.item.form.title.label": "Title",
18
+ "popup.item.form.autoSync.label": "Read fields from related",
18
19
  "popup.item.form.title.placeholder": "Enter the item title or leave blank to pull from related entity",
19
20
  "popup.item.form.uiRouterKey.label": "UI router key",
20
21
  "popup.item.form.uiRouterKey.placeholder": "If empty, auto generated by \"Title\"",
@@ -84,11 +85,13 @@
84
85
  "notification.navigation.item.relation.status.published": "published",
85
86
  "notification.error": "Error while processing request.",
86
87
  "notification.error.customField.type": "Unsupported type of custom field",
88
+ "notification.error.customField.media.missing": "Media input component is missing",
87
89
  "notification.error.item.relation": "Relations provided in some items are incorrect",
88
90
  "notification.error.item.slug": "Unable to create valid UI Router Key(slug) from \"{ query }\". \"{ result }\" received",
89
91
  "page.auth.noAccess": "No access",
90
92
  "page.auth.not.allowed": "Oops! It seems like You do not have access to this page...",
91
93
  "pages.main.search.placeholder": "Type to start searching...",
94
+ "pages.main.search.subLabel": "press ENTER to highlight next item",
92
95
  "pages.main.header.localization.select.placeholder": "Select locale",
93
96
  "pages.settings.general.title": "General settings",
94
97
  "pages.settings.additional.title": "Additional settings",
@@ -9,6 +9,7 @@
9
9
  "empty.cta": "Créer un premier élément",
10
10
  "popup.item.header": "Modifiez les éléments de navigation",
11
11
  "popup.item.form.title.label": "Titre",
12
+ "popup.item.form.autoSync.label": "Lire les champs associés",
12
13
  "popup.item.form.title.placeholder": "Saisissez le titre de l'élément ou laissez le champ vide pour utiliser celui de l'entité associée",
13
14
  "popup.item.form.uiRouterKey.label": "Clé de routeur pour l'interface utilisateur",
14
15
  "popup.item.form.uiRouterKey.placeholder": "Si vide, généré automatiquement par \"Title\"",
@@ -9,7 +9,7 @@ const fp_1 = require("lodash/fp");
9
9
  const pluginId_1 = __importDefault(require("../pluginId"));
10
10
  const fetchNavigationConfig = () => (0, helper_plugin_1.request)(`/${pluginId_1.default}/settings/config`, { method: 'GET' });
11
11
  exports.fetchNavigationConfig = fetchNavigationConfig;
12
- const updateNavigationConfig = ({ body }) => (0, helper_plugin_1.request)(`/${pluginId_1.default}/config`, { method: 'PUT', body }, true);
12
+ const updateNavigationConfig = ({ body }) => (0, helper_plugin_1.request)(`/${pluginId_1.default}/config`, { method: 'PUT', body: body }, true);
13
13
  exports.updateNavigationConfig = updateNavigationConfig;
14
14
  const restoreNavigationConfig = () => (0, helper_plugin_1.request)(`/${pluginId_1.default}/config`, { method: 'DELETE' }, true);
15
15
  exports.restoreNavigationConfig = restoreNavigationConfig;
package/package.json CHANGED
@@ -1,106 +1,81 @@
1
1
  {
2
- "name": "strapi-plugin-navigation",
3
- "version": "2.3.2",
4
- "description": "Strapi - Navigation plugin",
5
- "strapi": {
6
- "name": "navigation",
7
- "displayName": "Navigation",
8
- "description": "Create consumable navigation with a simple and straightforward visual builder",
9
- "kind": "plugin"
2
+ "name": "strapi-plugin-navigation",
3
+ "version": "2.4.0",
4
+ "description": "Strapi - Navigation plugin",
5
+ "strapi": {
6
+ "name": "navigation",
7
+ "displayName": "Navigation",
8
+ "description": "Create consumable navigation with a simple and straightforward visual builder",
9
+ "kind": "plugin"
10
+ },
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "https://github.com/VirtusLab/strapi-plugin-navigation"
14
+ },
15
+ "scripts": {},
16
+ "types": "./types/index.d.ts",
17
+ "dependencies": {
18
+ "@sindresorhus/slugify": "1.1.0",
19
+ "@strapi/utils": "^4.20.0",
20
+ "lodash": "^4.17.21",
21
+ "pluralize": "^8.0.0",
22
+ "react": "^18.2.0",
23
+ "react-dom": "^18.2.0",
24
+ "react-intl": "6.4.1",
25
+ "react-router": "^5.3.4",
26
+ "react-router-dom": "^5.3.4",
27
+ "uuid": "^8.3.0"
28
+ },
29
+ "devDependencies": {},
30
+ "peerDependencies": {
31
+ "@strapi/data-transfer": "4.15.5",
32
+ "@strapi/strapi": "4.x",
33
+ "react": "^17.0.0 || ^18.0.0",
34
+ "react-dom": "^17.0.0 || ^18.0.0",
35
+ "react-router-dom": "^5.2.0",
36
+ "styled-components": "^5.2.1"
37
+ },
38
+ "author": {
39
+ "name": "VirtusLab",
40
+ "email": "strapi@virtuslab.com",
41
+ "url": "https://virtuslab.com"
42
+ },
43
+ "maintainers": [
44
+ {
45
+ "name": "VirtusLab // Mateusz Ziarko",
46
+ "email": "mziarko@virtuslab.com",
47
+ "url": "https://virtuslab.com"
10
48
  },
11
- "repository": {
12
- "type": "git",
13
- "url": "https://github.com/VirtusLab/strapi-plugin-navigation"
49
+ {
50
+ "name": "VirtusLab // Maksymilian Pamuła",
51
+ "email": "mpamula@virtuslab.com",
52
+ "url": "https://virtuslab.com"
14
53
  },
15
- "scripts": {
16
- "publish:latest": "cd build && npm publish --tag latest",
17
- "prepublish:latest": "npm run clean && npm run build && node build/setup-package.js",
18
- "test:unit": "jest --verbose --coverage",
19
- "test:unit:watch": "jest --watch",
20
- "build": "tsc",
21
- "build:dev": "npm run build && cp ./package.json ./build && cd ./build && yarn",
22
- "clean": "rm -rf build",
23
- "develop": "nodemon --exec \"npm run build:dev\""
54
+ {
55
+ "name": "VirtusLab // Maciej Witkowski",
56
+ "email": "mwitkowski@virtuslab.com",
57
+ "url": "https://virtuslab.com"
24
58
  },
25
- "types": "./types/index.d.ts",
26
- "dependencies": {
27
- "@sindresorhus/slugify": "1.1.0",
28
- "@strapi/utils": "^4.16.2",
29
- "lodash": "^4.17.21",
30
- "pluralize": "^8.0.0",
31
- "react": "^18.2.0",
32
- "react-dom": "^18.2.0",
33
- "react-intl": "6.4.1",
34
- "react-router": "^5.3.4",
35
- "react-router-dom": "^5.3.4",
36
- "uuid": "^8.3.0"
37
- },
38
- "devDependencies": {
39
- "@types/jest": "^27.4.1",
40
- "@types/lodash": "^4.14.181",
41
- "@types/pluralize": "^0.0.29",
42
- "@types/uuid": "^8.3.4",
43
- "codecov": "^3.7.2",
44
- "formik": "^2.2.9",
45
- "jest": "^27.5.1",
46
- "jest-cli": "^27.5.1",
47
- "jest-styled-components": "^7.0.2",
48
- "koa": "^2.8.0",
49
- "nodemon": "^2.0.15",
50
- "strapi-typed": "1.0.17",
51
- "ts-jest": "^27.1.3",
52
- "ts-node": "^10.7.0",
53
- "typescript": "5.2.2"
54
- },
55
- "peerDependencies": {
56
- "@strapi/data-transfer": "4.15.5",
57
- "@strapi/strapi": "4.x",
58
- "react": "^17.0.0 || ^18.0.0",
59
- "react-dom": "^17.0.0 || ^18.0.0",
60
- "react-router-dom": "^5.2.0",
61
- "styled-components": "^5.2.1"
62
- },
63
- "author": {
64
- "name": "VirtusLab",
65
- "email": "strapi@virtuslab.com",
66
- "url": "https://virtuslab.com"
67
- },
68
- "maintainers": [
69
- {
70
- "name": "VirtusLab // Mateusz Ziarko",
71
- "email": "mziarko@virtuslab.com",
72
- "url": "https://virtuslab.com"
73
- },
74
- {
75
- "name": "VirtusLab // Maksymilian Pamuła",
76
- "email": "mpamula@virtuslab.com",
77
- "url": "https://virtuslab.com"
78
- },
79
- {
80
- "name": "VirtusLab // Maciej Witkowski",
81
- "email": "mwitkowski@virtuslab.com",
82
- "url": "https://virtuslab.com"
83
- },
84
- {
85
- "name": "VirtusLab // Tomasz Puch",
86
- "email": "tpuch@virtuslab.com",
87
- "url": "https://virtuslab.com"
88
- }
89
- ],
90
- "engines": {
91
- "node": ">=18.0.0 <=20.x.x",
92
- "npm": ">=6.0.0"
93
- },
94
- "nodemonConfig": {
95
- "ignore": [
96
- "./build/**/*"
97
- ],
98
- "ext": "js,json,ts"
99
- },
100
- "keywords": [
101
- "strapi",
102
- "plugin",
103
- "navigation"
59
+ {
60
+ "name": "VirtusLab // Tomasz Puch",
61
+ "email": "tpuch@virtuslab.com",
62
+ "url": "https://virtuslab.com"
63
+ }
64
+ ],
65
+ "engines": {
66
+ "node": ">=18.0.0 <=20.x.x",
67
+ "npm": ">=6.0.0"
68
+ },
69
+ "nodemonConfig": {
70
+ "ignore": [
71
+ "./build/**/*"
104
72
  ],
105
- "license": "MIT"
106
- }
73
+ "ext": "js,json,ts"
74
+ },
75
+ "keywords": [
76
+ "strapi",
77
+ "plugin",
78
+ "navigation"
79
+ ],
80
+ "license": "MIT"
81
+ }
@@ -79,6 +79,7 @@ declare const _default: {
79
79
  };
80
80
  };
81
81
  };
82
+ lifecycles: Record<import("../../types").LifeCycleHookName, import("../../types").Effect<import("../../types").LifeCycleEvent<import("../../types").LifeCycleHookName, unknown, Record<string, unknown>>>>;
82
83
  };
83
84
  "navigation-item": {
84
85
  schema: {
@@ -182,6 +183,7 @@ declare const _default: {
182
183
  };
183
184
  };
184
185
  };
186
+ lifecycles: Record<import("../../types").LifeCycleHookName, import("../../types").Effect<import("../../types").LifeCycleEvent<import("../../types").LifeCycleHookName, unknown, Record<string, unknown>>>>;
185
187
  };
186
188
  "navigations-items-related": {
187
189
  schema: {
@@ -53,6 +53,7 @@ declare const _default: {
53
53
  };
54
54
  };
55
55
  };
56
+ lifecycles: Record<import("../../../types").LifeCycleHookName, import("../../../types").Effect<import("../../../types").LifeCycleEvent<import("../../../types").LifeCycleHookName, unknown, Record<string, unknown>>>>;
56
57
  };
57
58
  export default _default;
58
59
  //# sourceMappingURL=index.d.ts.map
@@ -3,8 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const lifecycles_1 = __importDefault(require("./lifecycles"));
6
7
  const schema_1 = __importDefault(require("./schema"));
7
8
  exports.default = {
8
- schema: schema_1.default
9
+ schema: schema_1.default,
10
+ lifecycles: lifecycles_1.default,
9
11
  };
10
12
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ declare const _default: Record<import("../../../types").LifeCycleHookName, import("../../../types").Effect<import("../../../types").LifeCycleEvent<import("../../../types").LifeCycleHookName, unknown, Record<string, unknown>>>>;
2
+ export default _default;
3
+ //# sourceMappingURL=lifecycles.d.ts.map
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("../../utils");
4
+ exports.default = (0, utils_1.buildAllHookListeners)("navigation", {
5
+ strapi,
6
+ });
7
+ //# sourceMappingURL=lifecycles.js.map
@@ -100,6 +100,7 @@ declare const _default: {
100
100
  };
101
101
  };
102
102
  };
103
+ lifecycles: Record<import("../../../types").LifeCycleHookName, import("../../../types").Effect<import("../../../types").LifeCycleEvent<import("../../../types").LifeCycleHookName, unknown, Record<string, unknown>>>>;
103
104
  };
104
105
  export default _default;
105
106
  //# sourceMappingURL=index.d.ts.map
@@ -3,8 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const lifecycles_1 = __importDefault(require("./lifecycles"));
6
7
  const schema_1 = __importDefault(require("./schema"));
7
8
  exports.default = {
8
- schema: schema_1.default
9
+ schema: schema_1.default,
10
+ lifecycles: lifecycles_1.default
9
11
  };
10
12
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ declare const _default: Record<import("../../../types").LifeCycleHookName, import("../../../types").Effect<import("../../../types").LifeCycleEvent<import("../../../types").LifeCycleHookName, unknown, Record<string, unknown>>>>;
2
+ export default _default;
3
+ //# sourceMappingURL=lifecycles.d.ts.map
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("../../utils");
4
+ exports.default = (0, utils_1.buildAllHookListeners)("navigation-item", {
5
+ strapi,
6
+ });
7
+ //# sourceMappingURL=lifecycles.js.map