@webiny/app 5.44.1-beta.0 → 5.45.0-beta.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 (427) hide show
  1. package/App.d.ts +5 -13
  2. package/App.js +70 -87
  3. package/App.js.map +1 -1
  4. package/AppContainer.d.ts +23 -0
  5. package/AppContainer.js +9 -0
  6. package/AppContainer.js.map +1 -0
  7. package/README.md +7 -15
  8. package/apollo-client/InMemoryCache.d.ts +3 -2
  9. package/apollo-client/InMemoryCache.js +16 -47
  10. package/apollo-client/InMemoryCache.js.map +1 -1
  11. package/apollo-client/IntrospectionFragmentMatcher.d.ts +2 -2
  12. package/apollo-client/IntrospectionFragmentMatcher.js +33 -50
  13. package/apollo-client/IntrospectionFragmentMatcher.js.map +1 -1
  14. package/components/Image.d.ts +1 -2
  15. package/components/Image.js +11 -19
  16. package/components/Image.js.map +1 -1
  17. package/components/index.d.ts +1 -2
  18. package/components/index.js +1 -19
  19. package/components/index.js.map +1 -1
  20. package/config/RouterConfig/Route.d.ts +29 -0
  21. package/config/RouterConfig/Route.js +33 -0
  22. package/config/RouterConfig/Route.js.map +1 -0
  23. package/config/RouterConfig.d.ts +31 -0
  24. package/config/RouterConfig.js +18 -0
  25. package/config/RouterConfig.js.map +1 -0
  26. package/config.js +9 -15
  27. package/config.js.map +1 -1
  28. package/contexts/Ui/index.js +28 -52
  29. package/contexts/Ui/index.js.map +1 -1
  30. package/core/DebounceRender.js +13 -24
  31. package/core/DebounceRender.js.map +1 -1
  32. package/core/Plugin.d.ts +1 -1
  33. package/core/Plugin.js +11 -19
  34. package/core/Plugin.js.map +1 -1
  35. package/core/Plugins.d.ts +1 -1
  36. package/core/Plugins.js +20 -25
  37. package/core/Plugins.js.map +1 -1
  38. package/core/Provider.d.ts +1 -1
  39. package/core/Provider.js +9 -13
  40. package/core/Provider.js.map +1 -1
  41. package/core/Routes.d.ts +2 -1
  42. package/core/Routes.js +13 -23
  43. package/core/Routes.js.map +1 -1
  44. package/core/createProvider.d.ts +2 -2
  45. package/core/createProvider.js +1 -7
  46. package/core/createProvider.js.map +1 -1
  47. package/core/createProviderPlugin.d.ts +1 -1
  48. package/core/createProviderPlugin.js +4 -10
  49. package/core/createProviderPlugin.js.map +1 -1
  50. package/errors/AuthenticationErrorEvent.d.ts +9 -0
  51. package/errors/AuthenticationErrorEvent.js +10 -0
  52. package/errors/AuthenticationErrorEvent.js.map +1 -0
  53. package/errors/NetworkErrorEvent.d.ts +15 -0
  54. package/errors/NetworkErrorEvent.js +10 -0
  55. package/errors/NetworkErrorEvent.js.map +1 -0
  56. package/errors/abstractions.d.ts +12 -0
  57. package/errors/abstractions.js +5 -0
  58. package/errors/abstractions.js.map +1 -0
  59. package/errors/index.d.ts +6 -0
  60. package/errors/index.js +6 -0
  61. package/errors/index.js.map +1 -0
  62. package/exports/admin/envConfig.d.ts +1 -0
  63. package/exports/admin/envConfig.js +3 -0
  64. package/exports/admin/envConfig.js.map +1 -0
  65. package/exports/admin/graphqlClient.d.ts +1 -0
  66. package/exports/admin/graphqlClient.js +3 -0
  67. package/exports/admin/graphqlClient.js.map +1 -0
  68. package/exports/admin/localStorage.d.ts +2 -0
  69. package/exports/admin/localStorage.js +4 -0
  70. package/exports/admin/localStorage.js.map +1 -0
  71. package/exports/admin/router.d.ts +4 -0
  72. package/exports/admin/router.js +6 -0
  73. package/exports/admin/router.js.map +1 -0
  74. package/exports/admin/security.d.ts +1 -0
  75. package/exports/admin/security.js +3 -0
  76. package/exports/admin/security.js.map +1 -0
  77. package/exports/admin.d.ts +6 -0
  78. package/exports/admin.js +8 -0
  79. package/exports/admin.js.map +1 -0
  80. package/features/envConfig/EnvConfig.d.ts +6 -0
  81. package/features/envConfig/EnvConfig.js +14 -0
  82. package/features/envConfig/EnvConfig.js.map +1 -0
  83. package/features/envConfig/abstractions.d.ts +27 -0
  84. package/features/envConfig/abstractions.js +4 -0
  85. package/features/envConfig/abstractions.js.map +1 -0
  86. package/features/envConfig/feature.d.ts +17 -0
  87. package/features/envConfig/feature.js +14 -0
  88. package/features/envConfig/feature.js.map +1 -0
  89. package/features/envConfig/index.d.ts +1 -0
  90. package/features/envConfig/index.js +3 -0
  91. package/features/envConfig/index.js.map +1 -0
  92. package/features/eventPublisher/EventPublisher.d.ts +8 -0
  93. package/features/eventPublisher/EventPublisher.js +27 -0
  94. package/features/eventPublisher/EventPublisher.js.map +1 -0
  95. package/features/eventPublisher/abstractions.d.ts +18 -0
  96. package/features/eventPublisher/abstractions.js +14 -0
  97. package/features/eventPublisher/abstractions.js.map +1 -0
  98. package/features/eventPublisher/feature.d.ts +1 -0
  99. package/features/eventPublisher/feature.js +11 -0
  100. package/features/eventPublisher/feature.js.map +1 -0
  101. package/features/eventPublisher/index.d.ts +3 -0
  102. package/features/eventPublisher/index.js +4 -0
  103. package/features/eventPublisher/index.js.map +1 -0
  104. package/features/graphqlClient/AuthenticationErrorPublishing.d.ts +13 -0
  105. package/features/graphqlClient/AuthenticationErrorPublishing.js +35 -0
  106. package/features/graphqlClient/AuthenticationErrorPublishing.js.map +1 -0
  107. package/features/graphqlClient/BatchingGraphQLClient.d.ts +18 -0
  108. package/features/graphqlClient/BatchingGraphQLClient.js +164 -0
  109. package/features/graphqlClient/BatchingGraphQLClient.js.map +1 -0
  110. package/features/graphqlClient/FetchGraphQLClient.d.ts +10 -0
  111. package/features/graphqlClient/FetchGraphQLClient.js +62 -0
  112. package/features/graphqlClient/FetchGraphQLClient.js.map +1 -0
  113. package/features/graphqlClient/NetworkErrorPublishing.d.ts +14 -0
  114. package/features/graphqlClient/NetworkErrorPublishing.js +55 -0
  115. package/features/graphqlClient/NetworkErrorPublishing.js.map +1 -0
  116. package/features/graphqlClient/RequestValue.d.ts +20 -0
  117. package/features/graphqlClient/RequestValue.js +42 -0
  118. package/features/graphqlClient/RequestValue.js.map +1 -0
  119. package/features/graphqlClient/RetryGraphQLClient.d.ts +18 -0
  120. package/features/graphqlClient/RetryGraphQLClient.js +54 -0
  121. package/features/graphqlClient/RetryGraphQLClient.js.map +1 -0
  122. package/features/graphqlClient/__tests__/GraphQLClient.test.d.ts +1 -0
  123. package/features/graphqlClient/__tests__/GraphQLClient.test.js +350 -0
  124. package/features/graphqlClient/__tests__/GraphQLClient.test.js.map +1 -0
  125. package/features/graphqlClient/abstractions.d.ts +17 -0
  126. package/features/graphqlClient/abstractions.js +4 -0
  127. package/features/graphqlClient/abstractions.js.map +1 -0
  128. package/features/graphqlClient/feature.d.ts +6 -0
  129. package/features/graphqlClient/feature.js +31 -0
  130. package/features/graphqlClient/feature.js.map +1 -0
  131. package/features/graphqlClient/index.d.ts +1 -0
  132. package/features/graphqlClient/index.js +3 -0
  133. package/features/graphqlClient/index.js.map +1 -0
  134. package/features/graphqlClient/types.d.ts +5 -0
  135. package/features/graphqlClient/types.js +3 -0
  136. package/features/graphqlClient/types.js.map +1 -0
  137. package/features/localStorage/BrowserLocalStorageGateway.d.ts +9 -0
  138. package/features/localStorage/BrowserLocalStorageGateway.js +68 -0
  139. package/features/localStorage/BrowserLocalStorageGateway.js.map +1 -0
  140. package/features/localStorage/LocalStorage.d.ts +12 -0
  141. package/features/localStorage/LocalStorage.js +31 -0
  142. package/features/localStorage/LocalStorage.js.map +1 -0
  143. package/features/localStorage/LocalStorageRepository.d.ts +20 -0
  144. package/features/localStorage/LocalStorageRepository.js +95 -0
  145. package/features/localStorage/LocalStorageRepository.js.map +1 -0
  146. package/features/localStorage/abstractions.d.ts +48 -0
  147. package/features/localStorage/abstractions.js +19 -0
  148. package/features/localStorage/abstractions.js.map +1 -0
  149. package/features/localStorage/feature.d.ts +12 -0
  150. package/features/localStorage/feature.js +34 -0
  151. package/features/localStorage/feature.js.map +1 -0
  152. package/features/localStorage/index.d.ts +1 -0
  153. package/features/localStorage/index.js +3 -0
  154. package/features/localStorage/index.js.map +1 -0
  155. package/features/router/HistoryRouterGateway.d.ts +18 -0
  156. package/features/router/HistoryRouterGateway.js +82 -0
  157. package/features/router/HistoryRouterGateway.js.map +1 -0
  158. package/features/router/HistoryRouterGateway.test.d.ts +1 -0
  159. package/features/router/HistoryRouterGateway.test.js +204 -0
  160. package/features/router/HistoryRouterGateway.test.js.map +1 -0
  161. package/features/router/Route.d.ts +19 -0
  162. package/features/router/Route.js +59 -0
  163. package/features/router/Route.js.map +1 -0
  164. package/features/router/RouteUrl.d.ts +85 -0
  165. package/features/router/RouteUrl.js +232 -0
  166. package/features/router/RouteUrl.js.map +1 -0
  167. package/features/router/Router.d.ts +45 -0
  168. package/features/router/Router.js +129 -0
  169. package/features/router/Router.js.map +1 -0
  170. package/features/router/RouterPresenter.d.ts +17 -0
  171. package/features/router/RouterPresenter.js +45 -0
  172. package/features/router/RouterPresenter.js.map +1 -0
  173. package/features/router/RouterRepository.d.ts +21 -0
  174. package/features/router/RouterRepository.js +71 -0
  175. package/features/router/RouterRepository.js.map +1 -0
  176. package/features/router/RouterRepository.test.d.ts +1 -0
  177. package/features/router/RouterRepository.test.js +154 -0
  178. package/features/router/RouterRepository.test.js.map +1 -0
  179. package/features/router/abstractions.d.ts +68 -0
  180. package/features/router/abstractions.js +15 -0
  181. package/features/router/abstractions.js.map +1 -0
  182. package/features/router/feature.d.ts +4 -0
  183. package/features/router/feature.js +18 -0
  184. package/features/router/feature.js.map +1 -0
  185. package/features/router/index.d.ts +1 -0
  186. package/features/router/index.js +3 -0
  187. package/features/router/index.js.map +1 -0
  188. package/helpers/InterfaceGenerator/date.d.ts +15 -0
  189. package/helpers/InterfaceGenerator/date.js +3 -0
  190. package/helpers/InterfaceGenerator/date.js.map +1 -0
  191. package/helpers/InterfaceGenerator/id.d.ts +23 -0
  192. package/helpers/InterfaceGenerator/id.js +3 -0
  193. package/helpers/InterfaceGenerator/id.js.map +1 -0
  194. package/helpers/InterfaceGenerator/identity.d.ts +10 -0
  195. package/helpers/InterfaceGenerator/identity.js +3 -0
  196. package/helpers/InterfaceGenerator/identity.js.map +1 -0
  197. package/helpers/InterfaceGenerator/index.d.ts +5 -0
  198. package/helpers/InterfaceGenerator/index.js +3 -0
  199. package/helpers/InterfaceGenerator/index.js.map +1 -0
  200. package/helpers/InterfaceGenerator/numeric.d.ts +12 -0
  201. package/helpers/InterfaceGenerator/numeric.js +3 -0
  202. package/helpers/InterfaceGenerator/numeric.js.map +1 -0
  203. package/helpers/InterfaceGenerator/truthful.d.ts +7 -0
  204. package/helpers/InterfaceGenerator/truthful.js +3 -0
  205. package/helpers/InterfaceGenerator/truthful.js.map +1 -0
  206. package/hooks/useAutocomplete/index.d.ts +1 -1
  207. package/hooks/useAutocomplete/index.js +1 -12
  208. package/hooks/useAutocomplete/index.js.map +1 -1
  209. package/hooks/useAutocomplete/useAutocomplete.d.ts +1 -1
  210. package/hooks/useAutocomplete/useAutocomplete.js +6 -16
  211. package/hooks/useAutocomplete/useAutocomplete.js.map +1 -1
  212. package/hooks/useDataList/functions/getData.js +2 -11
  213. package/hooks/useDataList/functions/getData.js.map +1 -1
  214. package/hooks/useDataList/functions/getError.js +2 -11
  215. package/hooks/useDataList/functions/getError.js.map +1 -1
  216. package/hooks/useDataList/functions/getMeta.js +2 -11
  217. package/hooks/useDataList/functions/getMeta.js.map +1 -1
  218. package/hooks/useDataList/functions/index.d.ts +3 -3
  219. package/hooks/useDataList/functions/index.js +3 -27
  220. package/hooks/useDataList/functions/index.js.map +1 -1
  221. package/hooks/useDataList/functions/searchDataByKey.js +4 -10
  222. package/hooks/useDataList/functions/searchDataByKey.js.map +1 -1
  223. package/hooks/useDataList/index.d.ts +1 -1
  224. package/hooks/useDataList/index.js +1 -12
  225. package/hooks/useDataList/index.js.map +1 -1
  226. package/hooks/useDataList/useDataList.d.ts +2 -3
  227. package/hooks/useDataList/useDataList.js +74 -94
  228. package/hooks/useDataList/useDataList.js.map +1 -1
  229. package/hooks/useDataList/utils/index.d.ts +1 -2
  230. package/hooks/useDataList/utils/index.js +1 -20
  231. package/hooks/useDataList/utils/index.js.map +1 -1
  232. package/hooks/useDataList/utils/prepareLoadListParams.js +10 -16
  233. package/hooks/useDataList/utils/prepareLoadListParams.js.map +1 -1
  234. package/hooks/useHandler.js +7 -12
  235. package/hooks/useHandler.js.map +1 -1
  236. package/hooks/useHandlers.js +11 -17
  237. package/hooks/useHandlers.js.map +1 -1
  238. package/hooks/useRegisterLegacyPlugin.d.ts +1 -1
  239. package/hooks/useRegisterLegacyPlugin.js +5 -11
  240. package/hooks/useRegisterLegacyPlugin.js.map +1 -1
  241. package/hooks/useUi.d.ts +1 -1
  242. package/hooks/useUi.js +4 -10
  243. package/hooks/useUi.js.map +1 -1
  244. package/i18n/i18n.js +5 -13
  245. package/i18n/i18n.js.map +1 -1
  246. package/i18n/index.d.ts +1 -1
  247. package/i18n/index.js +1 -13
  248. package/i18n/index.js.map +1 -1
  249. package/index.d.ts +23 -15
  250. package/index.js +25 -177
  251. package/index.js.map +1 -1
  252. package/package.json +25 -22
  253. package/plugins/AddQuerySelectionPlugin.d.ts +2 -2
  254. package/plugins/AddQuerySelectionPlugin.js +61 -107
  255. package/plugins/AddQuerySelectionPlugin.js.map +1 -1
  256. package/plugins/ApolloCacheObjectIdPlugin.js +12 -31
  257. package/plugins/ApolloCacheObjectIdPlugin.js.map +1 -1
  258. package/plugins/ApolloDynamicLink.d.ts +3 -2
  259. package/plugins/ApolloDynamicLink.js +19 -46
  260. package/plugins/ApolloDynamicLink.js.map +1 -1
  261. package/plugins/ApolloLinkPlugin.d.ts +1 -1
  262. package/plugins/ApolloLinkPlugin.js +18 -37
  263. package/plugins/ApolloLinkPlugin.js.map +1 -1
  264. package/plugins/ConsoleLinkPlugin.d.ts +1 -1
  265. package/plugins/ConsoleLinkPlugin.js +20 -41
  266. package/plugins/ConsoleLinkPlugin.js.map +1 -1
  267. package/plugins/NetworkErrorLinkPlugin/ErrorOverlay.d.ts +8 -13
  268. package/plugins/NetworkErrorLinkPlugin/ErrorOverlay.js +35 -58
  269. package/plugins/NetworkErrorLinkPlugin/ErrorOverlay.js.map +1 -1
  270. package/plugins/NetworkErrorLinkPlugin/GqlErrorOverlay.d.ts +14 -0
  271. package/plugins/NetworkErrorLinkPlugin/GqlErrorOverlay.js +31 -0
  272. package/plugins/NetworkErrorLinkPlugin/GqlErrorOverlay.js.map +1 -0
  273. package/plugins/NetworkErrorLinkPlugin/LocalAwsLambdaTimeoutMessage.d.ts +2 -0
  274. package/plugins/NetworkErrorLinkPlugin/LocalAwsLambdaTimeoutMessage.js +31 -0
  275. package/plugins/NetworkErrorLinkPlugin/LocalAwsLambdaTimeoutMessage.js.map +1 -0
  276. package/plugins/NetworkErrorLinkPlugin/StyledComponents.d.ts +4 -5
  277. package/plugins/NetworkErrorLinkPlugin/StyledComponents.js +68 -12
  278. package/plugins/NetworkErrorLinkPlugin/StyledComponents.js.map +1 -1
  279. package/plugins/NetworkErrorLinkPlugin/Typography.d.ts +8 -0
  280. package/plugins/NetworkErrorLinkPlugin/Typography.js +18 -0
  281. package/plugins/NetworkErrorLinkPlugin/Typography.js.map +1 -0
  282. package/plugins/NetworkErrorLinkPlugin/createErrorOverlay.d.ts +3 -3
  283. package/plugins/NetworkErrorLinkPlugin/createErrorOverlay.js +10 -25
  284. package/plugins/NetworkErrorLinkPlugin/createErrorOverlay.js.map +1 -1
  285. package/plugins/NetworkErrorLinkPlugin.d.ts +4 -1
  286. package/plugins/NetworkErrorLinkPlugin.js +60 -37
  287. package/plugins/NetworkErrorLinkPlugin.js.map +1 -1
  288. package/plugins/OmitTypenameLinkPlugin.d.ts +1 -1
  289. package/plugins/OmitTypenameLinkPlugin.js +11 -30
  290. package/plugins/OmitTypenameLinkPlugin.js.map +1 -1
  291. package/plugins/TenantHeaderLinkPlugin.d.ts +3 -3
  292. package/plugins/TenantHeaderLinkPlugin.js +29 -48
  293. package/plugins/TenantHeaderLinkPlugin.js.map +1 -1
  294. package/plugins/components/Image.d.ts +6 -0
  295. package/plugins/components/Image.js +19 -0
  296. package/plugins/components/Image.js.map +1 -0
  297. package/plugins/image.d.ts +1 -1
  298. package/plugins/image.js +46 -53
  299. package/plugins/image.js.map +1 -1
  300. package/plugins/index.d.ts +4 -4
  301. package/plugins/index.js +31 -53
  302. package/plugins/index.js.map +1 -1
  303. package/presentation/localStorage/index.d.ts +3 -0
  304. package/presentation/localStorage/index.js +5 -0
  305. package/presentation/localStorage/index.js.map +1 -0
  306. package/presentation/localStorage/useLocalStorage.d.ts +6 -0
  307. package/presentation/localStorage/useLocalStorage.js +21 -0
  308. package/presentation/localStorage/useLocalStorage.js.map +1 -0
  309. package/presentation/localStorage/useLocalStorageValue.d.ts +1 -0
  310. package/presentation/localStorage/useLocalStorageValue.js +20 -0
  311. package/presentation/localStorage/useLocalStorageValue.js.map +1 -0
  312. package/presentation/localStorage/useLocalStorageValues.d.ts +5 -0
  313. package/presentation/localStorage/useLocalStorageValues.js +39 -0
  314. package/presentation/localStorage/useLocalStorageValues.js.map +1 -0
  315. package/presentation/router/RouteElementRegistry.d.ts +14 -0
  316. package/presentation/router/RouteElementRegistry.js +32 -0
  317. package/presentation/router/RouteElementRegistry.js.map +1 -0
  318. package/presentation/router/abstractions.d.ts +13 -0
  319. package/presentation/router/abstractions.js +4 -0
  320. package/presentation/router/abstractions.js.map +1 -0
  321. package/presentation/router/components/RouteContent.d.ts +2 -0
  322. package/presentation/router/components/RouteContent.js +17 -0
  323. package/presentation/router/components/RouteContent.js.map +1 -0
  324. package/presentation/router/components/RouteLink.d.ts +50 -0
  325. package/presentation/router/components/RouteLink.js +22 -0
  326. package/presentation/router/components/RouteLink.js.map +1 -0
  327. package/presentation/router/components/SimpleLink.d.ts +44 -0
  328. package/presentation/router/components/SimpleLink.js +30 -0
  329. package/presentation/router/components/SimpleLink.js.map +1 -0
  330. package/presentation/router/hooks/useRoute.d.ts +6 -0
  331. package/presentation/router/hooks/useRoute.js +30 -0
  332. package/presentation/router/hooks/useRoute.js.map +1 -0
  333. package/presentation/router/hooks/useRouter.d.ts +7 -0
  334. package/presentation/router/hooks/useRouter.js +26 -0
  335. package/presentation/router/hooks/useRouter.js.map +1 -0
  336. package/presentation/router/index.d.ts +4 -0
  337. package/presentation/router/index.js +5 -0
  338. package/presentation/router/index.js.map +1 -0
  339. package/presentation/router/types.d.ts +5 -0
  340. package/presentation/router/types.js +3 -0
  341. package/presentation/router/types.js.map +1 -0
  342. package/react-butterfiles/Files.js +208 -235
  343. package/react-butterfiles/Files.js.map +1 -1
  344. package/react-butterfiles/file.todo +1 -0
  345. package/react-butterfiles/index.d.ts +1 -1
  346. package/react-butterfiles/index.js +2 -8
  347. package/react-butterfiles/index.js.map +1 -1
  348. package/react-butterfiles/utils/generateId.js +1 -7
  349. package/react-butterfiles/utils/generateId.js.map +1 -1
  350. package/react-butterfiles/utils/readFileContent.js +4 -10
  351. package/react-butterfiles/utils/readFileContent.js.map +1 -1
  352. package/renderApp.d.ts +1 -1
  353. package/renderApp.js +4 -11
  354. package/renderApp.js.map +1 -1
  355. package/router.d.ts +5 -0
  356. package/router.js +8 -0
  357. package/router.js.map +1 -0
  358. package/shared/di/DiContainerProvider.d.ts +8 -0
  359. package/shared/di/DiContainerProvider.js +17 -0
  360. package/shared/di/DiContainerProvider.js.map +1 -0
  361. package/shared/di/createFeature.d.ts +11 -0
  362. package/shared/di/createFeature.js +11 -0
  363. package/shared/di/createFeature.js.map +1 -0
  364. package/shared/di/useFeature.d.ts +2 -0
  365. package/shared/di/useFeature.js +18 -0
  366. package/shared/di/useFeature.js.map +1 -0
  367. package/types.d.ts +9 -6
  368. package/types.js +1 -12
  369. package/types.js.map +1 -1
  370. package/utils/createGenericContext.js +13 -22
  371. package/utils/createGenericContext.js.map +1 -1
  372. package/utils/createHashing.js +9 -15
  373. package/utils/createHashing.js.map +1 -1
  374. package/utils/index.d.ts +2 -10
  375. package/utils/index.js +2 -115
  376. package/utils/index.js.map +1 -1
  377. package/utils/legacyPluginToReactComponent.d.ts +1 -1
  378. package/utils/legacyPluginToReactComponent.js +5 -11
  379. package/utils/legacyPluginToReactComponent.js.map +1 -1
  380. package/components/Routes.d.ts +0 -2
  381. package/components/Routes.js +0 -46
  382. package/components/Routes.js.map +0 -1
  383. package/components/View.d.ts +0 -8
  384. package/components/View.js +0 -31
  385. package/components/View.js.map +0 -1
  386. package/core/AddRoute.d.ts +0 -21
  387. package/core/AddRoute.js +0 -21
  388. package/core/AddRoute.js.map +0 -1
  389. package/hooks/useDataList/utils/redirectToRouteWithQueryParams.d.ts +0 -14
  390. package/hooks/useDataList/utils/redirectToRouteWithQueryParams.js +0 -30
  391. package/hooks/useDataList/utils/redirectToRouteWithQueryParams.js.map +0 -1
  392. package/hooks/useDataList/utils/types.d.ts +0 -40
  393. package/hooks/useDataList/utils/types.js +0 -7
  394. package/hooks/useDataList/utils/types.js.map +0 -1
  395. package/plugins/LocaleHeaderLinkPlugin.d.ts +0 -10
  396. package/plugins/LocaleHeaderLinkPlugin.js +0 -49
  397. package/plugins/LocaleHeaderLinkPlugin.js.map +0 -1
  398. package/plugins/RoutePlugin.d.ts +0 -12
  399. package/plugins/RoutePlugin.js +0 -35
  400. package/plugins/RoutePlugin.js.map +0 -1
  401. package/plugins/ViewPlugin.d.ts +0 -14
  402. package/plugins/ViewPlugin.js +0 -40
  403. package/plugins/ViewPlugin.js.map +0 -1
  404. package/utils/getApiUrl.d.ts +0 -1
  405. package/utils/getApiUrl.js +0 -12
  406. package/utils/getApiUrl.js.map +0 -1
  407. package/utils/getGqlApiUrl.d.ts +0 -1
  408. package/utils/getGqlApiUrl.js +0 -12
  409. package/utils/getGqlApiUrl.js.map +0 -1
  410. package/utils/getHeadlessCmsGqlApiUrl.d.ts +0 -5
  411. package/utils/getHeadlessCmsGqlApiUrl.js +0 -18
  412. package/utils/getHeadlessCmsGqlApiUrl.js.map +0 -1
  413. package/utils/getLocaleCode.d.ts +0 -6
  414. package/utils/getLocaleCode.js +0 -43
  415. package/utils/getLocaleCode.js.map +0 -1
  416. package/utils/getPrerenderId.d.ts +0 -6
  417. package/utils/getPrerenderId.js +0 -11
  418. package/utils/getPrerenderId.js.map +0 -1
  419. package/utils/getTenantId.d.ts +0 -6
  420. package/utils/getTenantId.js +0 -51
  421. package/utils/getTenantId.js.map +0 -1
  422. package/utils/isLocalhost.d.ts +0 -1
  423. package/utils/isLocalhost.js +0 -15
  424. package/utils/isLocalhost.js.map +0 -1
  425. package/utils/isPrerendering.d.ts +0 -1
  426. package/utils/isPrerendering.js +0 -11
  427. package/utils/isPrerendering.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_Image","_excluded","SUPPORTED_IMAGE_RESIZE_WIDTHS","getSupportedImageResizeWidth","width","output","i","length","sanitizeTransformArgs","args","undefined","parseInt","getSizes","endsWith","concat","isFixedImageWidth","Number","isFinite","getSrcSetAutoSizes","max","maxWidth","filter","supportedWidth","convertTransformToQueryParams","transform","Object","keys","map","key","join","_default","exports","default","imagePlugin","name","type","presets","avatar","getImageSrc","props","src","startsWith","sanitizedParams","params","render","srcSetInitial","srcSet","imageProps","_objectWithoutProperties2","sizes","forcedWidth","style","srcSetAutoWidths","forEach","_objectSpread2","createElement","Image","assign"],"sources":["image.tsx"],"sourcesContent":["import React from \"react\";\nimport { Image } from \"@webiny/ui/Image\";\nimport { ImageComponentPlugin } from \"~/types\";\n\nconst SUPPORTED_IMAGE_RESIZE_WIDTHS = [100, 300, 500, 750, 1000, 1500, 2500];\n\n/**\n * Width of the image should not be just any random number. For optimization reasons,\n * we only allow the ones listed in SUPPORTED_IMAGE_RESIZE_WIDTHS list (Webiny Cloud supports only these).\n */\nconst getSupportedImageResizeWidth = (width: number) => {\n let output = SUPPORTED_IMAGE_RESIZE_WIDTHS[0];\n let i = SUPPORTED_IMAGE_RESIZE_WIDTHS.length;\n while (i >= 0) {\n if (width === SUPPORTED_IMAGE_RESIZE_WIDTHS[i]) {\n output = SUPPORTED_IMAGE_RESIZE_WIDTHS[i];\n break;\n }\n\n if (width > SUPPORTED_IMAGE_RESIZE_WIDTHS[i]) {\n // Use next larger width. If there isn't any, use current.\n output = SUPPORTED_IMAGE_RESIZE_WIDTHS[i + 1];\n if (!output) {\n output = SUPPORTED_IMAGE_RESIZE_WIDTHS[i];\n }\n break;\n }\n\n i--;\n }\n\n return output;\n};\n\ninterface SanitizeTransformArgsParams {\n width?: string;\n}\ninterface SanitizeTransformArgsResult {\n width?: number;\n}\n/**\n * Currently we only allow \"width\" as a transform option.\n * @param args\n */\nconst sanitizeTransformArgs = (args?: SanitizeTransformArgsParams): SanitizeTransformArgsResult => {\n const output: SanitizeTransformArgsResult = {};\n if (!args || args.width === undefined || args.width === null) {\n return output;\n }\n const width = parseInt(args.width);\n if (width > 0) {\n output.width = getSupportedImageResizeWidth(width);\n }\n\n return output;\n};\n\nconst getSizes = (width?: string | number): string | undefined => {\n if (typeof width !== \"string\") {\n return undefined;\n }\n // Check if width was set as percentage, with \"%\" in the value.\n if (width.endsWith(\"%\")) {\n return `${parseInt(width)}vw`;\n }\n // Check if width was set as viewport width, with \"vw\" in the value.\n if (width.endsWith(\"vw\")) {\n return `${parseInt(width)}vw`;\n }\n\n // Check if width was set as relative, with \"em\" in the value.\n if (width.endsWith(\"em\")) {\n return `${parseInt(width)}em`;\n }\n\n return undefined;\n};\n\nconst isFixedImageWidth = (width?: number | string) => {\n if (Number.isFinite(width)) {\n return true;\n }\n\n if (typeof width === \"string\" && width.endsWith(\"px\")) {\n return true;\n }\n return false;\n};\n\nconst getSrcSetAutoSizes = (max?: string | number) => {\n max = isFixedImageWidth(max) ? parseInt(\"\" + max) : 2500;\n const maxWidth = getSupportedImageResizeWidth(max);\n return SUPPORTED_IMAGE_RESIZE_WIDTHS.filter((supportedWidth: number) => {\n return supportedWidth <= maxWidth;\n });\n};\n\nconst convertTransformToQueryParams = (transform: Record<string, any>): string => {\n return Object.keys(transform)\n .map(key => `${key}=${transform[key]}`)\n .join(\"&\");\n};\n\nexport default () => {\n const imagePlugin: ImageComponentPlugin = {\n name: \"image-component\",\n type: \"image-component\",\n presets: {\n avatar: { width: 300 }\n },\n getImageSrc: (props?: Record<string, any>) => {\n if (!props) {\n return \"\";\n }\n\n const { src, transform } = props;\n if (!transform) {\n return src;\n }\n\n if (!src || src.startsWith(\"data:\") || src.endsWith(\"svg\")) {\n return src;\n }\n\n const sanitizedParams = sanitizeTransformArgs(transform);\n const params = convertTransformToQueryParams(sanitizedParams);\n return src + \"?\" + params;\n },\n render(props) {\n const { transform, srcSet: srcSetInitial, ...imageProps } = props;\n let srcSet: any = srcSetInitial;\n let sizes: string | undefined;\n const src = imageProps.src;\n if (srcSet && srcSet === \"auto\") {\n srcSet = {};\n\n // Check if image width was forced, and additionally if width was set as pixels, with \"px\" in the value.\n const forcedWidth = props.width || (props.style && props.style.width);\n const srcSetAutoWidths = getSrcSetAutoSizes(forcedWidth);\n srcSetAutoWidths.forEach(width => {\n srcSet[width + \"w\"] = imagePlugin.getImageSrc({\n src,\n transform: { ...transform, width }\n });\n });\n sizes = getSizes(forcedWidth);\n }\n\n return <Image {...imageProps} srcSet={srcSet} src={src} sizes={sizes} />;\n }\n };\n\n return imagePlugin;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Image","SUPPORTED_IMAGE_RESIZE_WIDTHS","getSupportedImageResizeWidth","width","output","i","length","sanitizeTransformArgs","args","undefined","parseInt","getSizes","endsWith","isFixedImageWidth","Number","isFinite","getSrcSetAutoSizes","max","maxWidth","filter","supportedWidth","convertTransformToQueryParams","transform","Object","keys","map","key","join","imagePlugin","name","type","presets","avatar","getImageSrc","props","src","startsWith","sanitizedParams","params","render","srcSet","srcSetInitial","imageProps","sizes","forcedWidth","style","srcSetAutoWidths","forEach","createElement","assign"],"sources":["image.tsx"],"sourcesContent":["import React from \"react\";\nimport { Image } from \"./components/Image.js\";\nimport type { ImageComponentPlugin } from \"~/types.js\";\n\nconst SUPPORTED_IMAGE_RESIZE_WIDTHS = [128, 384, 640, 750, 828, 1080, 1200, 1920, 2048, 3840];\n\n/**\n * Width of the image should not be just any random number. For optimization reasons,\n * we only allow the ones listed in SUPPORTED_IMAGE_RESIZE_WIDTHS list (Webiny Cloud supports only these).\n */\nconst getSupportedImageResizeWidth = (width: number) => {\n let output = SUPPORTED_IMAGE_RESIZE_WIDTHS[0];\n let i = SUPPORTED_IMAGE_RESIZE_WIDTHS.length;\n while (i >= 0) {\n if (width === SUPPORTED_IMAGE_RESIZE_WIDTHS[i]) {\n output = SUPPORTED_IMAGE_RESIZE_WIDTHS[i];\n break;\n }\n\n if (width > SUPPORTED_IMAGE_RESIZE_WIDTHS[i]) {\n // Use next larger width. If there isn't any, use current.\n output = SUPPORTED_IMAGE_RESIZE_WIDTHS[i + 1];\n if (!output) {\n output = SUPPORTED_IMAGE_RESIZE_WIDTHS[i];\n }\n break;\n }\n\n i--;\n }\n\n return output;\n};\n\ninterface SanitizeTransformArgsParams {\n width?: string;\n}\ninterface SanitizeTransformArgsResult {\n width?: number;\n}\n/**\n * Currently we only allow \"width\" as a transform option.\n * @param args\n */\nconst sanitizeTransformArgs = (args?: SanitizeTransformArgsParams): SanitizeTransformArgsResult => {\n const output: SanitizeTransformArgsResult = {};\n if (!args || args.width === undefined || args.width === null) {\n return output;\n }\n const width = parseInt(args.width);\n if (width > 0) {\n output.width = getSupportedImageResizeWidth(width);\n }\n\n return output;\n};\n\nconst getSizes = (width?: string | number): string | undefined => {\n if (typeof width !== \"string\") {\n return undefined;\n }\n // Check if width was set as percentage, with \"%\" in the value.\n if (width.endsWith(\"%\")) {\n return `${parseInt(width)}vw`;\n }\n // Check if width was set as viewport width, with \"vw\" in the value.\n if (width.endsWith(\"vw\")) {\n return `${parseInt(width)}vw`;\n }\n\n // Check if width was set as relative, with \"em\" in the value.\n if (width.endsWith(\"em\")) {\n return `${parseInt(width)}em`;\n }\n\n return undefined;\n};\n\nconst isFixedImageWidth = (width?: number | string) => {\n if (Number.isFinite(width)) {\n return true;\n }\n\n if (typeof width === \"string\" && width.endsWith(\"px\")) {\n return true;\n }\n return false;\n};\n\nconst getSrcSetAutoSizes = (max?: string | number) => {\n max = isFixedImageWidth(max) ? parseInt(\"\" + max) : 2500;\n const maxWidth = getSupportedImageResizeWidth(max);\n return SUPPORTED_IMAGE_RESIZE_WIDTHS.filter((supportedWidth: number) => {\n return supportedWidth <= maxWidth;\n });\n};\n\nconst convertTransformToQueryParams = (transform: Record<string, any>): string => {\n return Object.keys(transform)\n .map(key => `${key}=${transform[key]}`)\n .join(\"&\");\n};\n\nexport default () => {\n const imagePlugin: ImageComponentPlugin = {\n name: \"image-component\",\n type: \"image-component\",\n presets: {\n avatar: { width: 300 }\n },\n getImageSrc: (props?: Record<string, any>) => {\n if (!props) {\n return \"\";\n }\n\n const { src, transform } = props;\n if (!transform) {\n return src;\n }\n\n if (!src || src.startsWith(\"data:\") || src.endsWith(\"svg\")) {\n return src;\n }\n\n const sanitizedParams = sanitizeTransformArgs(transform);\n const params = convertTransformToQueryParams(sanitizedParams);\n return src + \"?\" + params;\n },\n render(props) {\n const { transform, srcSet: srcSetInitial, ...imageProps } = props;\n let srcSet: any = srcSetInitial;\n let sizes: string | undefined;\n const src = imageProps.src;\n if (srcSet && srcSet === \"auto\") {\n srcSet = {};\n\n // Check if image width was forced, and additionally if width was set as pixels, with \"px\" in the value.\n const forcedWidth = props.width || (props.style && props.style.width);\n const srcSetAutoWidths = getSrcSetAutoSizes(forcedWidth);\n srcSetAutoWidths.forEach(width => {\n srcSet[width + \"w\"] = imagePlugin.getImageSrc({\n src,\n transform: { ...transform, width }\n });\n });\n sizes = getSizes(forcedWidth);\n }\n\n return <Image {...imageProps} srcSet={srcSet} src={src} sizes={sizes} />;\n }\n };\n\n return imagePlugin;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
- import { ReactNode } from "react";
2
- import { Plugin } from "@webiny/plugins/types";
3
- import imagePlugin from "./image";
1
+ import type { ReactNode } from "react";
2
+ import type { Plugin } from "@webiny/plugins/types.js";
3
+ import imagePlugin from "./image.js";
4
4
  export { imagePlugin };
5
5
  type RenderPluginOptions<T> = {
6
6
  wrapper?: boolean;
@@ -16,5 +16,5 @@ interface RenderPlugins {
16
16
  }
17
17
  export declare const renderPlugin: RenderPlugin;
18
18
  export declare const renderPlugins: RenderPlugins;
19
- declare const _default: (() => import("../types").ImageComponentPlugin)[];
19
+ declare const _default: (() => import("../types.js").ImageComponentPlugin)[];
20
20
  export default _default;
package/plugins/index.js CHANGED
@@ -1,65 +1,45 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- Object.defineProperty(exports, "imagePlugin", {
9
- enumerable: true,
10
- get: function get() {
11
- return _image.default;
12
- }
13
- });
14
- exports.renderPlugins = exports.renderPlugin = void 0;
15
- var _react = _interopRequireDefault(require("react"));
16
- var _warning = _interopRequireDefault(require("warning"));
17
- var _plugins = require("@webiny/plugins");
18
- var _image = _interopRequireDefault(require("./image"));
19
- var PluginComponent = function PluginComponent(props) {
1
+ import React from "react";
2
+ import warning from "warning";
3
+ import { plugins } from "@webiny/plugins";
4
+ import imagePlugin from "./image.js";
5
+ export { imagePlugin };
6
+ const PluginComponent = props => {
20
7
  return props.children;
21
8
  };
22
- var PluginsComponent = function PluginsComponent(props) {
9
+ const PluginsComponent = props => {
23
10
  return props.children;
24
11
  };
25
- var renderPlugin = exports.renderPlugin = function renderPlugin(name) {
26
- var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
27
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
28
- var _options$wrapper = options.wrapper,
29
- wrapper = _options$wrapper === void 0 ? true : _options$wrapper,
30
- _options$fn = options.fn,
31
- fn = _options$fn === void 0 ? "render" : _options$fn;
32
- var plugin = _plugins.plugins.byName(name);
33
- (0, _warning.default)(plugin, "No such plugin \"".concat(name, "\""));
12
+ export const renderPlugin = (name, params = {}, options = {}) => {
13
+ const {
14
+ wrapper = true,
15
+ fn = "render"
16
+ } = options;
17
+ const plugin = plugins.byName(name);
18
+ warning(plugin, `No such plugin "${name}"`);
34
19
  if (!plugin) {
35
20
  return null;
36
21
  }
37
- var content = plugin[fn](params);
22
+ const content = plugin[fn](params);
38
23
  if (content) {
39
- return wrapper ? /*#__PURE__*/_react.default.createElement(PluginComponent, {
24
+ return wrapper ? /*#__PURE__*/React.createElement(PluginComponent, {
40
25
  key: plugin.name,
41
26
  name: name,
42
27
  params: params,
43
28
  fn: fn
44
- }, content) : (/*#__PURE__*/_react.default.cloneElement(content, {
29
+ }, content) : (/*#__PURE__*/React.cloneElement(content, {
45
30
  key: plugin.name
46
31
  }));
47
32
  }
48
33
  return null;
49
34
  };
50
- var renderPlugins = exports.renderPlugins = function renderPlugins(type) {
51
- var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
52
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
53
- var _options$wrapper2 = options.wrapper,
54
- wrapper = _options$wrapper2 === void 0 ? true : _options$wrapper2,
55
- _options$fn2 = options.fn,
56
- fn = _options$fn2 === void 0 ? "render" : _options$fn2,
57
- _options$filter = options.filter,
58
- filter = _options$filter === void 0 ? function (v) {
59
- return v;
60
- } : _options$filter,
61
- reverse = options.reverse;
62
- var content = _plugins.plugins.byType(type).filter(function (pl) {
35
+ export const renderPlugins = (type, params = {}, options = {}) => {
36
+ const {
37
+ wrapper = true,
38
+ fn = "render",
39
+ filter = v => v,
40
+ reverse
41
+ } = options;
42
+ const content = plugins.byType(type).filter(pl => {
63
43
  /**
64
44
  * TODO @ts-refactor Problem with possibility of a different subtype.
65
45
  */
@@ -68,21 +48,19 @@ var renderPlugins = exports.renderPlugins = function renderPlugins(type) {
68
48
  })
69
49
  /**
70
50
  * We cast as string because renderPlugin checks for the plugin.name
71
- */.map(function (plugin) {
72
- return renderPlugin(plugin.name, params, {
73
- wrapper: wrapper,
74
- fn: fn
75
- });
76
- }).filter(Boolean);
51
+ */.map(plugin => renderPlugin(plugin.name, params, {
52
+ wrapper,
53
+ fn
54
+ })).filter(Boolean);
77
55
  if (reverse) {
78
56
  content.reverse();
79
57
  }
80
- return wrapper ? /*#__PURE__*/_react.default.createElement(PluginsComponent, {
58
+ return wrapper ? /*#__PURE__*/React.createElement(PluginsComponent, {
81
59
  type: type,
82
60
  params: params,
83
61
  fn: fn
84
62
  }, content) : content;
85
63
  };
86
- var _default = exports.default = [_image.default];
64
+ export default [imagePlugin];
87
65
 
88
66
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_warning","_plugins","_image","PluginComponent","props","children","PluginsComponent","renderPlugin","exports","name","params","arguments","length","undefined","options","_options$wrapper","wrapper","_options$fn","fn","plugin","plugins","byName","warning","concat","content","default","createElement","key","React","cloneElement","renderPlugins","type","_options$wrapper2","_options$fn2","_options$filter","filter","v","reverse","byType","pl","map","Boolean","_default","imagePlugin"],"sources":["index.tsx"],"sourcesContent":["import React, { ReactNode } from \"react\";\nimport warning from \"warning\";\nimport { plugins } from \"@webiny/plugins\";\nimport { Plugin } from \"@webiny/plugins/types\";\nimport imagePlugin from \"./image\";\n\nexport { imagePlugin };\n\ntype RenderPluginOptions<T> = {\n wrapper?: boolean;\n fn?: string;\n filter?: (value: T, index: number, array: T[]) => boolean;\n reverse?: boolean;\n};\n\ninterface RenderPlugin {\n <T extends Plugin = Plugin>(name: string, params?: any, options?: RenderPluginOptions<T>):\n | ReactNode\n | ReactNode[];\n}\n\ninterface RenderPlugins {\n <T extends Plugin = Plugin>(type: string, params?: any, options?: RenderPluginOptions<T>):\n | ReactNode\n | ReactNode[];\n}\n\ninterface PluginComponentProps {\n name: string;\n params: Record<string, any>;\n fn: string;\n children: React.ReactNode;\n}\nconst PluginComponent = (props: PluginComponentProps) => {\n return props.children as React.ReactElement;\n};\ninterface PluginsComponentProps {\n type: string;\n params: Record<string, any>;\n fn: string;\n children: React.ReactNode;\n}\nconst PluginsComponent = (props: PluginsComponentProps) => {\n return props.children as React.ReactElement;\n};\n\nexport const renderPlugin: RenderPlugin = (name, params = {}, options = {}) => {\n const { wrapper = true, fn = \"render\" } = options;\n\n const plugin = plugins.byName(name);\n warning(plugin, `No such plugin \"${name}\"`);\n\n if (!plugin) {\n return null;\n }\n\n const content = plugin[fn](params);\n if (content) {\n return wrapper ? (\n <PluginComponent key={plugin.name} name={name} params={params} fn={fn}>\n {content}\n </PluginComponent>\n ) : (\n React.cloneElement(content, { key: plugin.name })\n );\n }\n return null;\n};\n\nexport const renderPlugins: RenderPlugins = (type, params = {}, options = {}) => {\n const { wrapper = true, fn = \"render\", filter = v => v, reverse } = options;\n\n const content = plugins\n .byType(type)\n .filter(pl => {\n /**\n * TODO @ts-refactor Problem with possibility of a different subtype.\n */\n // @ts-expect-error\n return filter(pl);\n })\n /**\n * We cast as string because renderPlugin checks for the plugin.name\n */\n .map(plugin => renderPlugin(plugin.name as string, params, { wrapper, fn }))\n .filter(Boolean);\n\n if (reverse) {\n content.reverse();\n }\n\n return wrapper ? (\n <PluginsComponent type={type} params={params} fn={fn}>\n {content}\n </PluginsComponent>\n ) : (\n content\n );\n};\n\nexport default [imagePlugin];\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","warning","plugins","imagePlugin","PluginComponent","props","children","PluginsComponent","renderPlugin","name","params","options","wrapper","fn","plugin","byName","content","createElement","key","cloneElement","renderPlugins","type","filter","v","reverse","byType","pl","map","Boolean"],"sources":["index.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport React from \"react\";\nimport warning from \"warning\";\nimport { plugins } from \"@webiny/plugins\";\nimport type { Plugin } from \"@webiny/plugins/types.js\";\nimport imagePlugin from \"./image.js\";\n\nexport { imagePlugin };\n\ntype RenderPluginOptions<T> = {\n wrapper?: boolean;\n fn?: string;\n filter?: (value: T, index: number, array: T[]) => boolean;\n reverse?: boolean;\n};\n\ninterface RenderPlugin {\n <T extends Plugin = Plugin>(\n name: string,\n params?: any,\n options?: RenderPluginOptions<T>\n ): ReactNode | ReactNode[];\n}\n\ninterface RenderPlugins {\n <T extends Plugin = Plugin>(\n type: string,\n params?: any,\n options?: RenderPluginOptions<T>\n ): ReactNode | ReactNode[];\n}\n\ninterface PluginComponentProps {\n name: string;\n params: Record<string, any>;\n fn: string;\n children: React.ReactNode;\n}\nconst PluginComponent = (props: PluginComponentProps) => {\n return props.children as React.ReactElement;\n};\ninterface PluginsComponentProps {\n type: string;\n params: Record<string, any>;\n fn: string;\n children: React.ReactNode;\n}\nconst PluginsComponent = (props: PluginsComponentProps) => {\n return props.children as React.ReactElement;\n};\n\nexport const renderPlugin: RenderPlugin = (name, params = {}, options = {}) => {\n const { wrapper = true, fn = \"render\" } = options;\n\n const plugin = plugins.byName(name);\n warning(plugin, `No such plugin \"${name}\"`);\n\n if (!plugin) {\n return null;\n }\n\n const content = plugin[fn](params);\n if (content) {\n return wrapper ? (\n <PluginComponent key={plugin.name} name={name} params={params} fn={fn}>\n {content}\n </PluginComponent>\n ) : (\n React.cloneElement(content, { key: plugin.name })\n );\n }\n return null;\n};\n\nexport const renderPlugins: RenderPlugins = (type, params = {}, options = {}) => {\n const { wrapper = true, fn = \"render\", filter = v => v, reverse } = options;\n\n const content = plugins\n .byType(type)\n .filter(pl => {\n /**\n * TODO @ts-refactor Problem with possibility of a different subtype.\n */\n // @ts-expect-error\n return filter(pl);\n })\n /**\n * We cast as string because renderPlugin checks for the plugin.name\n */\n .map(plugin => renderPlugin(plugin.name as string, params, { wrapper, fn }))\n .filter(Boolean);\n\n if (reverse) {\n content.reverse();\n }\n\n return wrapper ? (\n <PluginsComponent type={type} params={params} fn={fn}>\n {content}\n </PluginsComponent>\n ) : (\n content\n );\n};\n\nexport default [imagePlugin];\n"],"mappings":"AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,OAAO,MAAM,SAAS;AAC7B,SAASC,OAAO,QAAQ,iBAAiB;AAEzC,OAAOC,WAAW;AAElB,SAASA,WAAW;AA+BpB,MAAMC,eAAe,GAAIC,KAA2B,IAAK;EACrD,OAAOA,KAAK,CAACC,QAAQ;AACzB,CAAC;AAOD,MAAMC,gBAAgB,GAAIF,KAA4B,IAAK;EACvD,OAAOA,KAAK,CAACC,QAAQ;AACzB,CAAC;AAED,OAAO,MAAME,YAA0B,GAAGA,CAACC,IAAI,EAAEC,MAAM,GAAG,CAAC,CAAC,EAAEC,OAAO,GAAG,CAAC,CAAC,KAAK;EAC3E,MAAM;IAAEC,OAAO,GAAG,IAAI;IAAEC,EAAE,GAAG;EAAS,CAAC,GAAGF,OAAO;EAEjD,MAAMG,MAAM,GAAGZ,OAAO,CAACa,MAAM,CAACN,IAAI,CAAC;EACnCR,OAAO,CAACa,MAAM,EAAE,mBAAmBL,IAAI,GAAG,CAAC;EAE3C,IAAI,CAACK,MAAM,EAAE;IACT,OAAO,IAAI;EACf;EAEA,MAAME,OAAO,GAAGF,MAAM,CAACD,EAAE,CAAC,CAACH,MAAM,CAAC;EAClC,IAAIM,OAAO,EAAE;IACT,OAAOJ,OAAO,gBACVZ,KAAA,CAAAiB,aAAA,CAACb,eAAe;MAACc,GAAG,EAAEJ,MAAM,CAACL,IAAK;MAACA,IAAI,EAAEA,IAAK;MAACC,MAAM,EAAEA,MAAO;MAACG,EAAE,EAAEA;IAAG,GACjEG,OACY,CAAC,iBAElBhB,KAAK,CAACmB,YAAY,CAACH,OAAO,EAAE;MAAEE,GAAG,EAAEJ,MAAM,CAACL;IAAK,CAAC,CAAC,CACpD;EACL;EACA,OAAO,IAAI;AACf,CAAC;AAED,OAAO,MAAMW,aAA4B,GAAGA,CAACC,IAAI,EAAEX,MAAM,GAAG,CAAC,CAAC,EAAEC,OAAO,GAAG,CAAC,CAAC,KAAK;EAC7E,MAAM;IAAEC,OAAO,GAAG,IAAI;IAAEC,EAAE,GAAG,QAAQ;IAAES,MAAM,GAAGC,CAAC,IAAIA,CAAC;IAAEC;EAAQ,CAAC,GAAGb,OAAO;EAE3E,MAAMK,OAAO,GAAGd,OAAO,CAClBuB,MAAM,CAACJ,IAAI,CAAC,CACZC,MAAM,CAACI,EAAE,IAAI;IACV;AACZ;AACA;IACY;IACA,OAAOJ,MAAM,CAACI,EAAE,CAAC;EACrB,CAAC;EACD;AACR;AACA,KAFQ,CAGCC,GAAG,CAACb,MAAM,IAAIN,YAAY,CAACM,MAAM,CAACL,IAAI,EAAYC,MAAM,EAAE;IAAEE,OAAO;IAAEC;EAAG,CAAC,CAAC,CAAC,CAC3ES,MAAM,CAACM,OAAO,CAAC;EAEpB,IAAIJ,OAAO,EAAE;IACTR,OAAO,CAACQ,OAAO,CAAC,CAAC;EACrB;EAEA,OAAOZ,OAAO,gBACVZ,KAAA,CAAAiB,aAAA,CAACV,gBAAgB;IAACc,IAAI,EAAEA,IAAK;IAACX,MAAM,EAAEA,MAAO;IAACG,EAAE,EAAEA;EAAG,GAChDG,OACa,CAAC,GAEnBA,OACH;AACL,CAAC;AAED,eAAe,CAACb,WAAW,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export { useLocalStorage } from "./useLocalStorage.js";
2
+ export { useLocalStorageValue } from "./useLocalStorageValue.js";
3
+ export { useLocalStorageValues } from "./useLocalStorageValues.js";
@@ -0,0 +1,5 @@
1
+ export { useLocalStorage } from "./useLocalStorage.js";
2
+ export { useLocalStorageValue } from "./useLocalStorageValue.js";
3
+ export { useLocalStorageValues } from "./useLocalStorageValues.js";
4
+
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useLocalStorage","useLocalStorageValue","useLocalStorageValues"],"sources":["index.ts"],"sourcesContent":["export { useLocalStorage } from \"./useLocalStorage.js\";\nexport { useLocalStorageValue } from \"./useLocalStorageValue.js\";\nexport { useLocalStorageValues } from \"./useLocalStorageValues.js\";\n"],"mappings":"AAAA,SAASA,eAAe;AACxB,SAASC,oBAAoB;AAC7B,SAASC,qBAAqB","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import { LocalStorage } from "../../features/localStorage/index.js";
2
+ /**
3
+ * Returns the LocalStorage instance from DI.
4
+ * Useful when you want to call service methods imperatively inside components.
5
+ */
6
+ export declare function useLocalStorage(): LocalStorage.Interface;
@@ -0,0 +1,21 @@
1
+ import { LocalStorageFeature } from "../../features/localStorage/feature.js";
2
+ import { useFeature } from "../../shared/di/useFeature.js";
3
+
4
+ /**
5
+ * Returns the LocalStorage instance from DI.
6
+ * Useful when you want to call service methods imperatively inside components.
7
+ */
8
+ export function useLocalStorage() {
9
+ const {
10
+ localStorageService
11
+ } = useFeature(LocalStorageFeature);
12
+ return {
13
+ get: localStorageService.get.bind(localStorageService),
14
+ set: localStorageService.set.bind(localStorageService),
15
+ remove: localStorageService.remove.bind(localStorageService),
16
+ clear: localStorageService.clear.bind(localStorageService),
17
+ keys: localStorageService.keys.bind(localStorageService)
18
+ };
19
+ }
20
+
21
+ //# sourceMappingURL=useLocalStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["LocalStorageFeature","useFeature","useLocalStorage","localStorageService","get","bind","set","remove","clear","keys"],"sources":["useLocalStorage.ts"],"sourcesContent":["import { LocalStorageFeature } from \"~/features/localStorage/feature.js\";\nimport { LocalStorage } from \"~/features/localStorage/index.js\";\nimport { useFeature } from \"~/shared/di/useFeature.js\";\n\n/**\n * Returns the LocalStorage instance from DI.\n * Useful when you want to call service methods imperatively inside components.\n */\nexport function useLocalStorage(): LocalStorage.Interface {\n const { localStorageService } = useFeature(LocalStorageFeature);\n\n return {\n get: localStorageService.get.bind(localStorageService),\n set: localStorageService.set.bind(localStorageService),\n remove: localStorageService.remove.bind(localStorageService),\n clear: localStorageService.clear.bind(localStorageService),\n keys: localStorageService.keys.bind(localStorageService)\n };\n}\n"],"mappings":"AAAA,SAASA,mBAAmB;AAE5B,SAASC,UAAU;;AAEnB;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAAA,EAA2B;EACtD,MAAM;IAAEC;EAAoB,CAAC,GAAGF,UAAU,CAACD,mBAAmB,CAAC;EAE/D,OAAO;IACHI,GAAG,EAAED,mBAAmB,CAACC,GAAG,CAACC,IAAI,CAACF,mBAAmB,CAAC;IACtDG,GAAG,EAAEH,mBAAmB,CAACG,GAAG,CAACD,IAAI,CAACF,mBAAmB,CAAC;IACtDI,MAAM,EAAEJ,mBAAmB,CAACI,MAAM,CAACF,IAAI,CAACF,mBAAmB,CAAC;IAC5DK,KAAK,EAAEL,mBAAmB,CAACK,KAAK,CAACH,IAAI,CAACF,mBAAmB,CAAC;IAC1DM,IAAI,EAAEN,mBAAmB,CAACM,IAAI,CAACJ,IAAI,CAACF,mBAAmB;EAC3D,CAAC;AACL","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare function useLocalStorageValue<T = string>(key: string): T | undefined;
@@ -0,0 +1,20 @@
1
+ import { useEffect, useState } from "react";
2
+ import { autorun } from "mobx";
3
+ import { LocalStorageFeature } from "../../features/localStorage/feature.js";
4
+ import { useFeature } from "../../shared/di/useFeature.js";
5
+ export function useLocalStorageValue(key) {
6
+ const {
7
+ localStorageService
8
+ } = useFeature(LocalStorageFeature);
9
+ const [value, setValue] = useState(() => localStorageService.get(key));
10
+ useEffect(() => {
11
+ const dispose = autorun(() => {
12
+ const value = localStorageService.get(key);
13
+ setValue(value);
14
+ });
15
+ return () => dispose();
16
+ }, [localStorageService, key]);
17
+ return value;
18
+ }
19
+
20
+ //# sourceMappingURL=useLocalStorageValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useState","autorun","LocalStorageFeature","useFeature","useLocalStorageValue","key","localStorageService","value","setValue","get","dispose"],"sources":["useLocalStorageValue.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { autorun } from \"mobx\";\nimport { LocalStorageFeature } from \"~/features/localStorage/feature.js\";\nimport { useFeature } from \"~/shared/di/useFeature.js\";\n\nexport function useLocalStorageValue<T = string>(key: string): T | undefined {\n const { localStorageService } = useFeature(LocalStorageFeature);\n\n const [value, setValue] = useState<T | undefined>(() => localStorageService.get<T>(key));\n\n useEffect(() => {\n const dispose = autorun(() => {\n const value = localStorageService.get<T>(key);\n setValue(value);\n });\n return () => dispose();\n }, [localStorageService, key]);\n\n return value;\n}\n"],"mappings":"AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC3C,SAASC,OAAO,QAAQ,MAAM;AAC9B,SAASC,mBAAmB;AAC5B,SAASC,UAAU;AAEnB,OAAO,SAASC,oBAAoBA,CAAaC,GAAW,EAAiB;EACzE,MAAM;IAAEC;EAAoB,CAAC,GAAGH,UAAU,CAACD,mBAAmB,CAAC;EAE/D,MAAM,CAACK,KAAK,EAAEC,QAAQ,CAAC,GAAGR,QAAQ,CAAgB,MAAMM,mBAAmB,CAACG,GAAG,CAAIJ,GAAG,CAAC,CAAC;EAExFN,SAAS,CAAC,MAAM;IACZ,MAAMW,OAAO,GAAGT,OAAO,CAAC,MAAM;MAC1B,MAAMM,KAAK,GAAGD,mBAAmB,CAACG,GAAG,CAAIJ,GAAG,CAAC;MAC7CG,QAAQ,CAACD,KAAK,CAAC;IACnB,CAAC,CAAC;IACF,OAAO,MAAMG,OAAO,CAAC,CAAC;EAC1B,CAAC,EAAE,CAACJ,mBAAmB,EAAED,GAAG,CAAC,CAAC;EAE9B,OAAOE,KAAK;AAChB","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Observes multiple keys in LocalStorage and returns an object of { key: value }.
3
+ * Re-renders when any of the observed keys change.
4
+ */
5
+ export declare function useLocalStorageValues<T extends Record<string, any>>(keys: (keyof T & string)[]): Partial<T>;
@@ -0,0 +1,39 @@
1
+ import { useEffect, useRef, useState } from "react";
2
+ import { autorun } from "mobx";
3
+ import isEqual from "lodash/isEqual.js";
4
+ import { LocalStorageFeature } from "../../features/localStorage/feature.js";
5
+ import { useFeature } from "../../shared/di/useFeature.js";
6
+
7
+ /**
8
+ * Observes multiple keys in LocalStorage and returns an object of { key: value }.
9
+ * Re-renders when any of the observed keys change.
10
+ */
11
+ export function useLocalStorageValues(keys) {
12
+ const {
13
+ localStorageService
14
+ } = useFeature(LocalStorageFeature);
15
+ const [values, setValues] = useState(() => {
16
+ const initial = {};
17
+ for (const key of keys) {
18
+ initial[key] = localStorageService.get(key);
19
+ }
20
+ return initial;
21
+ });
22
+ const valuesRef = useRef(values);
23
+ useEffect(() => {
24
+ const dispose = autorun(() => {
25
+ const snapshot = {};
26
+ for (const key of keys) {
27
+ snapshot[key] = localStorageService.get(key);
28
+ }
29
+ if (!isEqual(snapshot, valuesRef.current)) {
30
+ setValues(snapshot);
31
+ valuesRef.current = snapshot;
32
+ }
33
+ });
34
+ return () => dispose();
35
+ }, [localStorageService, keys.join(",")]);
36
+ return values;
37
+ }
38
+
39
+ //# sourceMappingURL=useLocalStorageValues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useRef","useState","autorun","isEqual","LocalStorageFeature","useFeature","useLocalStorageValues","keys","localStorageService","values","setValues","initial","key","get","valuesRef","dispose","snapshot","current","join"],"sources":["useLocalStorageValues.ts"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\nimport { autorun } from \"mobx\";\nimport isEqual from \"lodash/isEqual.js\";\nimport { LocalStorageFeature } from \"~/features/localStorage/feature.js\";\nimport { useFeature } from \"~/shared/di/useFeature.js\";\n\n/**\n * Observes multiple keys in LocalStorage and returns an object of { key: value }.\n * Re-renders when any of the observed keys change.\n */\nexport function useLocalStorageValues<T extends Record<string, any>>(\n keys: (keyof T & string)[]\n): Partial<T> {\n const { localStorageService } = useFeature(LocalStorageFeature);\n\n const [values, setValues] = useState<Partial<T>>(() => {\n const initial: Partial<T> = {};\n for (const key of keys) {\n initial[key] = localStorageService.get<any>(key);\n }\n return initial;\n });\n\n const valuesRef = useRef(values);\n\n useEffect(() => {\n const dispose = autorun(() => {\n const snapshot: Partial<T> = {};\n for (const key of keys) {\n snapshot[key] = localStorageService.get<any>(key);\n }\n\n if (!isEqual(snapshot, valuesRef.current)) {\n setValues(snapshot);\n valuesRef.current = snapshot;\n }\n });\n return () => dispose();\n }, [localStorageService, keys.join(\",\")]);\n\n return values;\n}\n"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AACnD,SAASC,OAAO,QAAQ,MAAM;AAC9B,OAAOC,OAAO,MAAM,mBAAmB;AACvC,SAASC,mBAAmB;AAC5B,SAASC,UAAU;;AAEnB;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CACjCC,IAA0B,EAChB;EACV,MAAM;IAAEC;EAAoB,CAAC,GAAGH,UAAU,CAACD,mBAAmB,CAAC;EAE/D,MAAM,CAACK,MAAM,EAAEC,SAAS,CAAC,GAAGT,QAAQ,CAAa,MAAM;IACnD,MAAMU,OAAmB,GAAG,CAAC,CAAC;IAC9B,KAAK,MAAMC,GAAG,IAAIL,IAAI,EAAE;MACpBI,OAAO,CAACC,GAAG,CAAC,GAAGJ,mBAAmB,CAACK,GAAG,CAAMD,GAAG,CAAC;IACpD;IACA,OAAOD,OAAO;EAClB,CAAC,CAAC;EAEF,MAAMG,SAAS,GAAGd,MAAM,CAACS,MAAM,CAAC;EAEhCV,SAAS,CAAC,MAAM;IACZ,MAAMgB,OAAO,GAAGb,OAAO,CAAC,MAAM;MAC1B,MAAMc,QAAoB,GAAG,CAAC,CAAC;MAC/B,KAAK,MAAMJ,GAAG,IAAIL,IAAI,EAAE;QACpBS,QAAQ,CAACJ,GAAG,CAAC,GAAGJ,mBAAmB,CAACK,GAAG,CAAMD,GAAG,CAAC;MACrD;MAEA,IAAI,CAACT,OAAO,CAACa,QAAQ,EAAEF,SAAS,CAACG,OAAO,CAAC,EAAE;QACvCP,SAAS,CAACM,QAAQ,CAAC;QACnBF,SAAS,CAACG,OAAO,GAAGD,QAAQ;MAChC;IACJ,CAAC,CAAC;IACF,OAAO,MAAMD,OAAO,CAAC,CAAC;EAC1B,CAAC,EAAE,CAACP,mBAAmB,EAAED,IAAI,CAACW,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;EAEzC,OAAOT,MAAM;AACjB","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ declare class RouteElementRegistryImplementation {
3
+ private readonly elements;
4
+ /** Register a React element for a given route. */
5
+ register(routeName: string, element: React.ReactNode): void;
6
+ /** Get the element for a matched route by name. */
7
+ getElement(routeName: string): React.ReactNode | null;
8
+ /** Clear all registered elements. Useful in tests or hot reloads. */
9
+ clear(): void;
10
+ /** List all registered route names. */
11
+ list(): string[];
12
+ }
13
+ export declare const DefaultRouteElementRegistry: import("@webiny/di").Implementation<typeof RouteElementRegistryImplementation>;
14
+ export {};
@@ -0,0 +1,32 @@
1
+ import { createImplementation } from "@webiny/di";
2
+ import { RouteElementRegistry } from "./abstractions.js";
3
+ class RouteElementRegistryImplementation {
4
+ elements = new Map();
5
+
6
+ /** Register a React element for a given route. */
7
+ register(routeName, element) {
8
+ this.elements.set(routeName, element);
9
+ }
10
+
11
+ /** Get the element for a matched route by name. */
12
+ getElement(routeName) {
13
+ return this.elements.get(routeName) ?? null;
14
+ }
15
+
16
+ /** Clear all registered elements. Useful in tests or hot reloads. */
17
+ clear() {
18
+ this.elements.clear();
19
+ }
20
+
21
+ /** List all registered route names. */
22
+ list() {
23
+ return [...this.elements.keys()];
24
+ }
25
+ }
26
+ export const DefaultRouteElementRegistry = createImplementation({
27
+ implementation: RouteElementRegistryImplementation,
28
+ abstraction: RouteElementRegistry,
29
+ dependencies: []
30
+ });
31
+
32
+ //# sourceMappingURL=RouteElementRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createImplementation","RouteElementRegistry","RouteElementRegistryImplementation","elements","Map","register","routeName","element","set","getElement","get","clear","list","keys","DefaultRouteElementRegistry","implementation","abstraction","dependencies"],"sources":["RouteElementRegistry.ts"],"sourcesContent":["import React from \"react\";\nimport { createImplementation } from \"@webiny/di\";\nimport { RouteElementRegistry } from \"./abstractions.js\";\n\nclass RouteElementRegistryImplementation {\n private readonly elements = new Map<string, React.ReactNode>();\n\n /** Register a React element for a given route. */\n register(routeName: string, element: React.ReactNode): void {\n this.elements.set(routeName, element);\n }\n\n /** Get the element for a matched route by name. */\n getElement(routeName: string): React.ReactNode | null {\n return this.elements.get(routeName) ?? null;\n }\n\n /** Clear all registered elements. Useful in tests or hot reloads. */\n clear(): void {\n this.elements.clear();\n }\n\n /** List all registered route names. */\n list(): string[] {\n return [...this.elements.keys()];\n }\n}\n\nexport const DefaultRouteElementRegistry = createImplementation({\n implementation: RouteElementRegistryImplementation,\n abstraction: RouteElementRegistry,\n dependencies: []\n});\n"],"mappings":"AACA,SAASA,oBAAoB,QAAQ,YAAY;AACjD,SAASC,oBAAoB;AAE7B,MAAMC,kCAAkC,CAAC;EACpBC,QAAQ,GAAG,IAAIC,GAAG,CAA0B,CAAC;;EAE9D;EACAC,QAAQA,CAACC,SAAiB,EAAEC,OAAwB,EAAQ;IACxD,IAAI,CAACJ,QAAQ,CAACK,GAAG,CAACF,SAAS,EAAEC,OAAO,CAAC;EACzC;;EAEA;EACAE,UAAUA,CAACH,SAAiB,EAA0B;IAClD,OAAO,IAAI,CAACH,QAAQ,CAACO,GAAG,CAACJ,SAAS,CAAC,IAAI,IAAI;EAC/C;;EAEA;EACAK,KAAKA,CAAA,EAAS;IACV,IAAI,CAACR,QAAQ,CAACQ,KAAK,CAAC,CAAC;EACzB;;EAEA;EACAC,IAAIA,CAAA,EAAa;IACb,OAAO,CAAC,GAAG,IAAI,CAACT,QAAQ,CAACU,IAAI,CAAC,CAAC,CAAC;EACpC;AACJ;AAEA,OAAO,MAAMC,2BAA2B,GAAGd,oBAAoB,CAAC;EAC5De,cAAc,EAAEb,kCAAkC;EAClDc,WAAW,EAAEf,oBAAoB;EACjCgB,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import React from "react";
2
+ import { Abstraction } from "@webiny/di";
3
+ interface IRouteElementRegistry {
4
+ register(name: string, element: React.ReactElement): void;
5
+ getElement(routeName: string): React.ReactNode | null;
6
+ clear(): void;
7
+ list(): string[];
8
+ }
9
+ export declare const RouteElementRegistry: Abstraction<IRouteElementRegistry>;
10
+ export declare namespace RouteElementRegistry {
11
+ type Interface = IRouteElementRegistry;
12
+ }
13
+ export {};
@@ -0,0 +1,4 @@
1
+ import { Abstraction } from "@webiny/di";
2
+ export const RouteElementRegistry = new Abstraction("RouteElementRegistry");
3
+
4
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Abstraction","RouteElementRegistry"],"sources":["abstractions.ts"],"sourcesContent":["import React from \"react\";\nimport { Abstraction } from \"@webiny/di\";\n\ninterface IRouteElementRegistry {\n register(name: string, element: React.ReactElement): void;\n getElement(routeName: string): React.ReactNode | null;\n clear(): void;\n list(): string[];\n}\n\nexport const RouteElementRegistry = new Abstraction<IRouteElementRegistry>(\"RouteElementRegistry\");\n\nexport namespace RouteElementRegistry {\n export type Interface = IRouteElementRegistry;\n}\n"],"mappings":"AACA,SAASA,WAAW,QAAQ,YAAY;AASxC,OAAO,MAAMC,oBAAoB,GAAG,IAAID,WAAW,CAAwB,sBAAsB,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const RouteContent: () => React.JSX.Element | null;
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ import { RouteElementRegistry, useRoute } from "../index.js";
3
+ import { useContainer } from "../../../shared/di/DiContainerProvider.js";
4
+ export const RouteContent = () => {
5
+ const {
6
+ route
7
+ } = useRoute();
8
+ const container = useContainer();
9
+ const elementRegistry = container.resolve(RouteElementRegistry);
10
+ if (!route) {
11
+ return null;
12
+ }
13
+ const element = elementRegistry.getElement(route.name);
14
+ return /*#__PURE__*/React.createElement(React.Fragment, null, element ?? null);
15
+ };
16
+
17
+ //# sourceMappingURL=RouteContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","RouteElementRegistry","useRoute","useContainer","RouteContent","route","container","elementRegistry","resolve","element","getElement","name","createElement","Fragment"],"sources":["RouteContent.tsx"],"sourcesContent":["import React from \"react\";\nimport { RouteElementRegistry, useRoute } from \"~/presentation/router/index.js\";\nimport { useContainer } from \"~/shared/di/DiContainerProvider.js\";\n\nexport const RouteContent = () => {\n const { route } = useRoute();\n const container = useContainer();\n const elementRegistry = container.resolve(RouteElementRegistry);\n\n if (!route) {\n return null;\n }\n\n const element = elementRegistry.getElement(route.name);\n\n return <>{element ?? null}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,oBAAoB,EAAEC,QAAQ;AACvC,SAASC,YAAY;AAErB,OAAO,MAAMC,YAAY,GAAGA,CAAA,KAAM;EAC9B,MAAM;IAAEC;EAAM,CAAC,GAAGH,QAAQ,CAAC,CAAC;EAC5B,MAAMI,SAAS,GAAGH,YAAY,CAAC,CAAC;EAChC,MAAMI,eAAe,GAAGD,SAAS,CAACE,OAAO,CAACP,oBAAoB,CAAC;EAE/D,IAAI,CAACI,KAAK,EAAE;IACR,OAAO,IAAI;EACf;EAEA,MAAMI,OAAO,GAAGF,eAAe,CAACG,UAAU,CAACL,KAAK,CAACM,IAAI,CAAC;EAEtD,oBAAOX,KAAA,CAAAY,aAAA,CAAAZ,KAAA,CAAAa,QAAA,QAAGJ,OAAO,IAAI,IAAO,CAAC;AACjC,CAAC","ignoreList":[]}
@@ -0,0 +1,50 @@
1
+ import React from "react";
2
+ import type { Route, RouteParamsDefinition, RouteParamsInfer } from "../../../features/router/Route.js";
3
+ type BaseAnchorAttributes = Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, "href">;
4
+ export type RouteLinkProps<TParams extends RouteParamsDefinition | undefined> = [
5
+ TParams extends RouteParamsDefinition ? {
6
+ route: Route<TParams>;
7
+ params: RouteParamsInfer<TParams>;
8
+ } : {
9
+ route: Route<TParams>;
10
+ }
11
+ ][0] & BaseAnchorAttributes;
12
+ export declare const RouteLink: (<TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element) & {
13
+ original: <TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element;
14
+ originalName: string;
15
+ displayName: string;
16
+ } & {
17
+ original: (<TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element) & {
18
+ original: <TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element;
19
+ originalName: string;
20
+ displayName: string;
21
+ };
22
+ originalName: string;
23
+ displayName: string;
24
+ } & {
25
+ createDecorator: (decorator: import("@webiny/react-composition").ComponentDecorator<(<TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element) & {
26
+ original: <TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element;
27
+ originalName: string;
28
+ displayName: string;
29
+ }>) => (props: unknown) => React.JSX.Element;
30
+ };
31
+ export declare const RouteLinkComponent: (<TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element) & {
32
+ original: <TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element;
33
+ originalName: string;
34
+ displayName: string;
35
+ } & {
36
+ original: (<TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element) & {
37
+ original: <TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element;
38
+ originalName: string;
39
+ displayName: string;
40
+ };
41
+ originalName: string;
42
+ displayName: string;
43
+ } & {
44
+ createDecorator: (decorator: import("@webiny/react-composition").ComponentDecorator<(<TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element) & {
45
+ original: <TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => React.JSX.Element;
46
+ originalName: string;
47
+ displayName: string;
48
+ }>) => (props: unknown) => React.JSX.Element;
49
+ };
50
+ export {};
@@ -0,0 +1,22 @@
1
+ import React from "react";
2
+ import { makeDecoratable } from "@webiny/react-composition";
3
+ import { SimpleLink } from "./SimpleLink.js";
4
+ import { useRouter } from "../../../router.js";
5
+
6
+ // The props are generic over the Route's schema.
7
+
8
+ export const RouteLink = makeDecoratable("RouteLink", props => {
9
+ const router = useRouter();
10
+ const {
11
+ children,
12
+ route,
13
+ ...rest
14
+ } = props;
15
+ const href = rest.params ? router.getLink(route, rest.params) : router.getLink(route);
16
+ return /*#__PURE__*/React.createElement(SimpleLink, Object.assign({
17
+ to: href
18
+ }, rest), children);
19
+ });
20
+ export const RouteLinkComponent = RouteLink;
21
+
22
+ //# sourceMappingURL=RouteLink.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","makeDecoratable","SimpleLink","useRouter","RouteLink","props","router","children","route","rest","href","params","getLink","createElement","Object","assign","to","RouteLinkComponent"],"sources":["RouteLink.tsx"],"sourcesContent":["import React from \"react\";\nimport { makeDecoratable } from \"@webiny/react-composition\";\nimport type { Route, RouteParamsDefinition, RouteParamsInfer } from \"~/features/router/Route.js\";\nimport { SimpleLink } from \"./SimpleLink.js\";\nimport { useRouter } from \"~/router.js\";\n\ntype BaseAnchorAttributes = Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, \"href\">;\n\n// The props are generic over the Route's schema.\nexport type RouteLinkProps<TParams extends RouteParamsDefinition | undefined> = [\n TParams extends RouteParamsDefinition\n ? {\n route: Route<TParams>;\n params: RouteParamsInfer<TParams>;\n }\n : { route: Route<TParams> }\n][0] &\n BaseAnchorAttributes;\n\nexport const RouteLink = makeDecoratable(\n \"RouteLink\",\n <TParams extends RouteParamsDefinition | undefined>(props: RouteLinkProps<TParams>) => {\n const router = useRouter();\n\n const { children, route, ...rest } = props as any;\n\n const href = rest.params ? router.getLink(route!, rest.params) : router.getLink(route!);\n\n return (\n <SimpleLink to={href} {...rest}>\n {children}\n </SimpleLink>\n );\n }\n);\n\nexport const RouteLinkComponent = RouteLink;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,eAAe,QAAQ,2BAA2B;AAE3D,SAASC,UAAU;AACnB,SAASC,SAAS;;AAIlB;;AAWA,OAAO,MAAMC,SAAS,GAAGH,eAAe,CACpC,WAAW,EACyCI,KAA8B,IAAK;EACnF,MAAMC,MAAM,GAAGH,SAAS,CAAC,CAAC;EAE1B,MAAM;IAAEI,QAAQ;IAAEC,KAAK;IAAE,GAAGC;EAAK,CAAC,GAAGJ,KAAY;EAEjD,MAAMK,IAAI,GAAGD,IAAI,CAACE,MAAM,GAAGL,MAAM,CAACM,OAAO,CAACJ,KAAK,EAAGC,IAAI,CAACE,MAAM,CAAC,GAAGL,MAAM,CAACM,OAAO,CAACJ,KAAM,CAAC;EAEvF,oBACIR,KAAA,CAAAa,aAAA,CAACX,UAAU,EAAAY,MAAA,CAAAC,MAAA;IAACC,EAAE,EAAEN;EAAK,GAAKD,IAAI,GACzBF,QACO,CAAC;AAErB,CACJ,CAAC;AAED,OAAO,MAAMU,kBAAkB,GAAGb,SAAS","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ import React from "react";
2
+ type BaseAnchorAttributes = Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, "href">;
3
+ export type SimpleLinkProps = BaseAnchorAttributes & {
4
+ to: string;
5
+ };
6
+ export declare const SimpleLink: (({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element) & {
7
+ original: ({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element;
8
+ originalName: string;
9
+ displayName: string;
10
+ } & {
11
+ original: (({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element) & {
12
+ original: ({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element;
13
+ originalName: string;
14
+ displayName: string;
15
+ };
16
+ originalName: string;
17
+ displayName: string;
18
+ } & {
19
+ createDecorator: (decorator: import("@webiny/react-composition").ComponentDecorator<(({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element) & {
20
+ original: ({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element;
21
+ originalName: string;
22
+ displayName: string;
23
+ }>) => (props: unknown) => React.JSX.Element;
24
+ };
25
+ export declare const LinkComponent: (({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element) & {
26
+ original: ({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element;
27
+ originalName: string;
28
+ displayName: string;
29
+ } & {
30
+ original: (({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element) & {
31
+ original: ({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element;
32
+ originalName: string;
33
+ displayName: string;
34
+ };
35
+ originalName: string;
36
+ displayName: string;
37
+ } & {
38
+ createDecorator: (decorator: import("@webiny/react-composition").ComponentDecorator<(({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element) & {
39
+ original: ({ children, to, ...rest }: SimpleLinkProps) => React.JSX.Element;
40
+ originalName: string;
41
+ displayName: string;
42
+ }>) => (props: unknown) => React.JSX.Element;
43
+ };
44
+ export {};