@openedx/frontend-base 1.0.0-alpha.9 → 1.0.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 (895) hide show
  1. package/README.md +27 -0
  2. package/dist/index.d.ts +4 -0
  3. package/dist/index.js +4 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/runtime/analytics/MockAnalyticsService.d.ts +50 -0
  6. package/dist/runtime/analytics/MockAnalyticsService.js +64 -0
  7. package/dist/runtime/analytics/MockAnalyticsService.js.map +1 -0
  8. package/dist/runtime/analytics/SegmentAnalyticsService.d.ts +64 -0
  9. package/dist/runtime/analytics/SegmentAnalyticsService.js +218 -0
  10. package/dist/runtime/analytics/SegmentAnalyticsService.js.map +1 -0
  11. package/dist/runtime/analytics/index.d.ts +3 -0
  12. package/dist/runtime/analytics/index.js +4 -0
  13. package/dist/runtime/analytics/index.js.map +1 -0
  14. package/dist/runtime/analytics/interface.d.ts +53 -0
  15. package/dist/runtime/analytics/interface.js +133 -0
  16. package/dist/runtime/analytics/interface.js.map +1 -0
  17. package/dist/runtime/auth/AxiosCsrfTokenService.d.ts +10 -0
  18. package/dist/runtime/auth/AxiosCsrfTokenService.js +64 -0
  19. package/dist/runtime/auth/AxiosCsrfTokenService.js.map +1 -0
  20. package/dist/runtime/auth/AxiosJwtAuthService.d.ts +182 -0
  21. package/dist/runtime/auth/AxiosJwtAuthService.js +339 -0
  22. package/dist/runtime/auth/AxiosJwtAuthService.js.map +1 -0
  23. package/dist/runtime/auth/AxiosJwtTokenService.d.ts +16 -0
  24. package/dist/runtime/auth/AxiosJwtTokenService.js +130 -0
  25. package/dist/runtime/auth/AxiosJwtTokenService.js.map +1 -0
  26. package/dist/runtime/auth/LocalForageCache.d.ts +7 -0
  27. package/dist/runtime/auth/LocalForageCache.js +78 -0
  28. package/dist/runtime/auth/LocalForageCache.js.map +1 -0
  29. package/dist/runtime/auth/MockAuthService.d.ts +209 -0
  30. package/dist/runtime/auth/MockAuthService.js +256 -0
  31. package/dist/runtime/auth/MockAuthService.js.map +1 -0
  32. package/dist/runtime/auth/index.d.ts +3 -0
  33. package/dist/runtime/auth/index.js +4 -0
  34. package/dist/runtime/auth/index.js.map +1 -0
  35. package/dist/runtime/auth/interceptors/createCsrfTokenProviderInterceptor.d.ts +2 -0
  36. package/dist/runtime/auth/interceptors/createCsrfTokenProviderInterceptor.js +42 -0
  37. package/dist/runtime/auth/interceptors/createCsrfTokenProviderInterceptor.js.map +1 -0
  38. package/dist/runtime/auth/interceptors/createJwtTokenProviderInterceptor.d.ts +2 -0
  39. package/dist/runtime/auth/interceptors/createJwtTokenProviderInterceptor.js +40 -0
  40. package/dist/runtime/auth/interceptors/createJwtTokenProviderInterceptor.js.map +1 -0
  41. package/dist/runtime/auth/interceptors/createProcessAxiosRequestErrorInterceptor.d.ts +2 -0
  42. package/dist/runtime/auth/interceptors/createProcessAxiosRequestErrorInterceptor.js +26 -0
  43. package/dist/runtime/auth/interceptors/createProcessAxiosRequestErrorInterceptor.js.map +1 -0
  44. package/dist/runtime/auth/interceptors/createRetryInterceptor.d.ts +3 -0
  45. package/dist/runtime/auth/interceptors/createRetryInterceptor.js +67 -0
  46. package/dist/runtime/auth/interceptors/createRetryInterceptor.js.map +1 -0
  47. package/dist/runtime/auth/interface.d.ts +133 -0
  48. package/dist/runtime/auth/interface.js +302 -0
  49. package/dist/runtime/auth/interface.js.map +1 -0
  50. package/dist/runtime/auth/utils.d.ts +13 -0
  51. package/dist/runtime/auth/utils.js +66 -0
  52. package/dist/runtime/auth/utils.js.map +1 -0
  53. package/dist/runtime/babel.config.d.ts +2 -0
  54. package/dist/runtime/babel.config.js +4 -0
  55. package/dist/runtime/babel.config.js.map +1 -0
  56. package/dist/runtime/config/index.d.ts +216 -0
  57. package/dist/runtime/config/index.js +428 -0
  58. package/dist/runtime/config/index.js.map +1 -0
  59. package/dist/runtime/constants.d.ts +57 -0
  60. package/dist/runtime/constants.js +58 -0
  61. package/dist/runtime/constants.js.map +1 -0
  62. package/dist/runtime/i18n/index.d.ts +3 -0
  63. package/dist/runtime/i18n/index.js +78 -0
  64. package/dist/runtime/i18n/index.js.map +1 -0
  65. package/dist/runtime/i18n/injectIntlWithShim.d.ts +11 -0
  66. package/dist/runtime/i18n/injectIntlWithShim.js +45 -0
  67. package/dist/runtime/i18n/injectIntlWithShim.js.map +1 -0
  68. package/dist/runtime/i18n/lib.d.ts +113 -0
  69. package/dist/runtime/i18n/lib.js +223 -0
  70. package/dist/runtime/i18n/lib.js.map +1 -0
  71. package/dist/runtime/index.d.ts +14 -0
  72. package/dist/runtime/index.js +15 -0
  73. package/dist/runtime/index.js.map +1 -0
  74. package/dist/runtime/initialize.d.ts +87 -0
  75. package/dist/runtime/initialize.js +305 -0
  76. package/dist/runtime/initialize.js.map +1 -0
  77. package/dist/runtime/jest.config.d.ts +16 -0
  78. package/dist/runtime/jest.config.js +34 -0
  79. package/dist/runtime/jest.config.js.map +1 -0
  80. package/dist/runtime/logging/MockLoggingService.d.ts +28 -0
  81. package/dist/runtime/logging/MockLoggingService.js +31 -0
  82. package/dist/runtime/logging/MockLoggingService.js.map +1 -0
  83. package/dist/runtime/logging/NewRelicLoggingService.d.ts +67 -0
  84. package/dist/runtime/logging/NewRelicLoggingService.js +175 -0
  85. package/dist/runtime/logging/NewRelicLoggingService.js.map +1 -0
  86. package/dist/runtime/logging/index.d.ts +3 -0
  87. package/dist/runtime/logging/index.js +4 -0
  88. package/dist/runtime/logging/index.js.map +1 -0
  89. package/dist/runtime/logging/interface.d.ts +38 -0
  90. package/dist/runtime/logging/interface.js +99 -0
  91. package/dist/runtime/logging/interface.js.map +1 -0
  92. package/dist/runtime/logging/types.d.ts +4 -0
  93. package/dist/runtime/logging/types.js +2 -0
  94. package/dist/runtime/logging/types.js.map +1 -0
  95. package/dist/runtime/react/AuthenticatedPageRoute.d.ts +30 -0
  96. package/dist/runtime/react/AuthenticatedPageRoute.js +38 -0
  97. package/dist/runtime/react/AuthenticatedPageRoute.js.map +1 -0
  98. package/dist/runtime/react/CombinedAppProvider.d.ts +6 -0
  99. package/dist/runtime/react/CombinedAppProvider.js +20 -0
  100. package/dist/runtime/react/CombinedAppProvider.js.map +1 -0
  101. package/dist/runtime/react/CurrentAppContext.d.ts +20 -0
  102. package/dist/runtime/react/CurrentAppContext.js +21 -0
  103. package/dist/runtime/react/CurrentAppContext.js.map +1 -0
  104. package/dist/runtime/react/CurrentAppProvider.d.ts +23 -0
  105. package/dist/runtime/react/CurrentAppProvider.js +33 -0
  106. package/dist/runtime/react/CurrentAppProvider.js.map +1 -0
  107. package/dist/runtime/react/Divider.d.ts +1 -0
  108. package/dist/runtime/react/Divider.js +5 -0
  109. package/dist/runtime/react/Divider.js.map +1 -0
  110. package/dist/runtime/react/ErrorBoundary.d.ts +32 -0
  111. package/dist/runtime/react/ErrorBoundary.js +40 -0
  112. package/dist/runtime/react/ErrorBoundary.js.map +1 -0
  113. package/dist/runtime/react/ErrorPage.d.ts +17 -0
  114. package/dist/runtime/react/ErrorPage.js +29 -0
  115. package/dist/runtime/react/ErrorPage.js.map +1 -0
  116. package/dist/runtime/react/LoginRedirect.d.ts +8 -0
  117. package/dist/runtime/react/LoginRedirect.js +16 -0
  118. package/dist/runtime/react/LoginRedirect.js.map +1 -0
  119. package/dist/runtime/react/NotFoundPage.d.ts +2 -0
  120. package/dist/runtime/react/NotFoundPage.js +14 -0
  121. package/dist/runtime/react/NotFoundPage.js.map +1 -0
  122. package/dist/runtime/react/PageWrap.d.ts +8 -0
  123. package/dist/runtime/react/PageWrap.js +21 -0
  124. package/dist/runtime/react/PageWrap.js.map +1 -0
  125. package/dist/runtime/react/SiteContext.d.ts +24 -0
  126. package/dist/runtime/react/SiteContext.js +26 -0
  127. package/dist/runtime/react/SiteContext.js.map +1 -0
  128. package/dist/runtime/react/SiteProvider.d.ts +29 -0
  129. package/dist/runtime/react/SiteProvider.js +69 -0
  130. package/dist/runtime/react/SiteProvider.js.map +1 -0
  131. package/dist/runtime/react/constants.d.ts +3 -0
  132. package/dist/runtime/react/constants.js +4 -0
  133. package/dist/runtime/react/constants.js.map +1 -0
  134. package/dist/runtime/react/hooks/index.d.ts +7 -0
  135. package/dist/runtime/react/hooks/index.js +8 -0
  136. package/dist/runtime/react/hooks/index.js.map +1 -0
  137. package/dist/runtime/react/hooks/theme/index.js +3 -0
  138. package/dist/runtime/react/hooks/theme/index.js.map +1 -0
  139. package/dist/runtime/react/hooks/theme/useTheme.d.ts +35 -0
  140. package/dist/runtime/react/hooks/theme/useTheme.js +153 -0
  141. package/dist/runtime/react/hooks/theme/useTheme.js.map +1 -0
  142. package/dist/runtime/react/hooks/theme/useThemeConfig.d.ts +16 -0
  143. package/dist/runtime/react/hooks/theme/useThemeConfig.js +29 -0
  144. package/dist/runtime/react/hooks/theme/useThemeConfig.js.map +1 -0
  145. package/dist/runtime/react/hooks/theme/useThemeCore.d.ts +10 -0
  146. package/dist/runtime/react/hooks/theme/useThemeCore.js +48 -0
  147. package/dist/runtime/react/hooks/theme/useThemeCore.js.map +1 -0
  148. package/dist/runtime/react/hooks/theme/useThemeVariants.d.ts +17 -0
  149. package/dist/runtime/react/hooks/theme/useThemeVariants.js +90 -0
  150. package/dist/runtime/react/hooks/theme/useThemeVariants.js.map +1 -0
  151. package/dist/runtime/react/hooks/theme/useTrackColorSchemeChoice.d.ts +8 -0
  152. package/dist/runtime/react/hooks/theme/useTrackColorSchemeChoice.js +30 -0
  153. package/dist/runtime/react/hooks/theme/useTrackColorSchemeChoice.js.map +1 -0
  154. package/dist/runtime/react/hooks/theme/utils.d.ts +6 -0
  155. package/dist/runtime/react/hooks/theme/utils.js +11 -0
  156. package/dist/runtime/react/hooks/theme/utils.js.map +1 -0
  157. package/dist/runtime/react/hooks/useActiveRoles.d.ts +2 -0
  158. package/dist/runtime/react/hooks/useActiveRoles.js +16 -0
  159. package/dist/runtime/react/hooks/useActiveRoles.js.map +1 -0
  160. package/dist/runtime/react/hooks/useActiveRouteRoleWatcher.d.ts +2 -0
  161. package/dist/runtime/react/hooks/useActiveRouteRoleWatcher.js +22 -0
  162. package/dist/runtime/react/hooks/useActiveRouteRoleWatcher.js.map +1 -0
  163. package/dist/runtime/react/hooks/useAppConfig.d.ts +2 -0
  164. package/dist/runtime/react/hooks/useAppConfig.js +8 -0
  165. package/dist/runtime/react/hooks/useAppConfig.js.map +1 -0
  166. package/dist/runtime/react/hooks/useAuthenticatedUser.d.ts +2 -0
  167. package/dist/runtime/react/hooks/useAuthenticatedUser.js +8 -0
  168. package/dist/runtime/react/hooks/useAuthenticatedUser.js.map +1 -0
  169. package/dist/runtime/react/hooks/useSiteConfig.d.ts +2 -0
  170. package/dist/runtime/react/hooks/useSiteConfig.js +8 -0
  171. package/dist/runtime/react/hooks/useSiteConfig.js.map +1 -0
  172. package/dist/runtime/react/hooks/useSiteEvent.d.ts +12 -0
  173. package/dist/runtime/react/hooks/useSiteEvent.js +22 -0
  174. package/dist/runtime/react/hooks/useSiteEvent.js.map +1 -0
  175. package/dist/runtime/react/index.d.ts +19 -0
  176. package/dist/runtime/react/index.js +20 -0
  177. package/dist/runtime/react/index.js.map +1 -0
  178. package/dist/runtime/react/reducers.d.ts +11 -0
  179. package/dist/runtime/react/reducers.js +28 -0
  180. package/dist/runtime/react/reducers.js.map +1 -0
  181. package/dist/runtime/routing/authenticatedLoader.d.ts +2 -0
  182. package/dist/runtime/routing/authenticatedLoader.js +27 -0
  183. package/dist/runtime/routing/authenticatedLoader.js.map +1 -0
  184. package/dist/runtime/routing/index.d.ts +2 -0
  185. package/dist/runtime/routing/index.js +3 -0
  186. package/dist/runtime/routing/index.js.map +1 -0
  187. package/dist/runtime/routing/utils.d.ts +4 -0
  188. package/dist/runtime/routing/utils.js +43 -0
  189. package/dist/runtime/routing/utils.js.map +1 -0
  190. package/dist/runtime/scripts/index.d.ts +1 -0
  191. package/dist/runtime/scripts/index.js +14 -0
  192. package/dist/runtime/scripts/index.js.map +1 -0
  193. package/dist/runtime/setupTest.d.ts +1 -0
  194. package/dist/runtime/setupTest.js +12 -0
  195. package/dist/runtime/setupTest.js.map +1 -0
  196. package/dist/runtime/slots/Slot.d.ts +11 -0
  197. package/dist/runtime/slots/Slot.js +37 -0
  198. package/dist/runtime/slots/Slot.js.map +1 -0
  199. package/dist/runtime/slots/SlotContext.d.ts +8 -0
  200. package/dist/runtime/slots/SlotContext.js +7 -0
  201. package/dist/runtime/slots/SlotContext.js.map +1 -0
  202. package/dist/runtime/slots/hooks.d.ts +11 -0
  203. package/dist/runtime/slots/hooks.js +19 -0
  204. package/dist/runtime/slots/hooks.js.map +1 -0
  205. package/dist/runtime/slots/index.js +7 -0
  206. package/dist/runtime/slots/index.js.map +1 -0
  207. package/dist/runtime/slots/layout/DefaultSlotLayout.d.ts +1 -0
  208. package/dist/runtime/slots/layout/DefaultSlotLayout.js +7 -0
  209. package/dist/runtime/slots/layout/DefaultSlotLayout.js.map +1 -0
  210. package/dist/runtime/slots/layout/hooks.d.ts +9 -0
  211. package/dist/runtime/slots/layout/hooks.js +52 -0
  212. package/dist/runtime/slots/layout/hooks.js.map +1 -0
  213. package/dist/runtime/slots/layout/index.js +5 -0
  214. package/dist/runtime/slots/layout/index.js.map +1 -0
  215. package/dist/runtime/slots/layout/types.d.ts +30 -0
  216. package/dist/runtime/slots/layout/types.js +12 -0
  217. package/dist/runtime/slots/layout/types.js.map +1 -0
  218. package/dist/runtime/slots/layout/utils.d.ts +5 -0
  219. package/dist/runtime/slots/layout/utils.js +11 -0
  220. package/dist/runtime/slots/layout/utils.js.map +1 -0
  221. package/dist/runtime/slots/types.d.ts +18 -0
  222. package/dist/runtime/slots/types.js +7 -0
  223. package/dist/runtime/slots/types.js.map +1 -0
  224. package/dist/runtime/slots/utils.d.ts +3 -0
  225. package/dist/runtime/slots/utils.js +65 -0
  226. package/dist/runtime/slots/utils.js.map +1 -0
  227. package/dist/runtime/slots/widget/WidgetContext.d.ts +6 -0
  228. package/dist/runtime/slots/widget/WidgetContext.js +8 -0
  229. package/dist/runtime/slots/widget/WidgetContext.js.map +1 -0
  230. package/dist/runtime/slots/widget/WidgetProvider.d.ts +9 -0
  231. package/dist/runtime/slots/widget/WidgetProvider.js +18 -0
  232. package/dist/runtime/slots/widget/WidgetProvider.js.map +1 -0
  233. package/dist/runtime/slots/widget/hooks.d.ts +12 -0
  234. package/dist/runtime/slots/widget/hooks.js +84 -0
  235. package/dist/runtime/slots/widget/hooks.js.map +1 -0
  236. package/dist/runtime/slots/widget/iframe/IFrameContentWrapper.d.ts +10 -0
  237. package/dist/runtime/slots/widget/iframe/IFrameContentWrapper.js +42 -0
  238. package/dist/runtime/slots/widget/iframe/IFrameContentWrapper.js.map +1 -0
  239. package/dist/runtime/slots/widget/iframe/IFrameContentWrapper.messages.d.ts +13 -0
  240. package/dist/runtime/slots/widget/iframe/IFrameContentWrapper.messages.js +15 -0
  241. package/dist/runtime/slots/widget/iframe/IFrameContentWrapper.messages.js.map +1 -0
  242. package/dist/runtime/slots/widget/iframe/IFrameWidget.d.ts +6 -0
  243. package/dist/runtime/slots/widget/iframe/IFrameWidget.js +32 -0
  244. package/dist/runtime/slots/widget/iframe/IFrameWidget.js.map +1 -0
  245. package/dist/runtime/slots/widget/iframe/constants.d.ts +15 -0
  246. package/dist/runtime/slots/widget/iframe/constants.js +17 -0
  247. package/dist/runtime/slots/widget/iframe/constants.js.map +1 -0
  248. package/dist/runtime/slots/widget/iframe/hooks.d.ts +64 -0
  249. package/dist/runtime/slots/widget/iframe/hooks.js +144 -0
  250. package/dist/runtime/slots/widget/iframe/hooks.js.map +1 -0
  251. package/dist/runtime/slots/widget/iframe/index.d.ts +3 -0
  252. package/dist/runtime/slots/widget/iframe/index.js +3 -0
  253. package/dist/runtime/slots/widget/iframe/index.js.map +1 -0
  254. package/dist/runtime/slots/widget/iframe/types.d.ts +5 -0
  255. package/dist/runtime/slots/widget/iframe/types.js +3 -0
  256. package/dist/runtime/slots/widget/iframe/types.js.map +1 -0
  257. package/dist/runtime/slots/widget/index.js +6 -0
  258. package/dist/runtime/slots/widget/index.js.map +1 -0
  259. package/dist/runtime/slots/widget/types.d.ts +108 -0
  260. package/dist/runtime/slots/widget/types.js +41 -0
  261. package/dist/runtime/slots/widget/types.js.map +1 -0
  262. package/dist/runtime/slots/widget/utils.d.ts +22 -0
  263. package/dist/runtime/slots/widget/utils.js +181 -0
  264. package/dist/runtime/slots/widget/utils.js.map +1 -0
  265. package/dist/runtime/subscriptions.d.ts +24 -0
  266. package/dist/runtime/subscriptions.js +48 -0
  267. package/dist/runtime/subscriptions.js.map +1 -0
  268. package/dist/runtime/testing/index.d.ts +8 -0
  269. package/dist/runtime/testing/index.js +9 -0
  270. package/dist/runtime/testing/index.js.map +1 -0
  271. package/dist/runtime/testing/initializeMockApp.d.ts +46 -0
  272. package/dist/runtime/testing/initializeMockApp.js +71 -0
  273. package/dist/runtime/testing/initializeMockApp.js.map +1 -0
  274. package/dist/runtime/testing/mockMessages.d.ts +22 -0
  275. package/dist/runtime/testing/mockMessages.js +23 -0
  276. package/dist/runtime/testing/mockMessages.js.map +1 -0
  277. package/dist/runtime/utils.d.ts +95 -0
  278. package/dist/runtime/utils.js +163 -0
  279. package/dist/runtime/utils.js.map +1 -0
  280. package/dist/shell/DefaultLayout.d.ts +1 -0
  281. package/dist/shell/DefaultLayout.js +7 -0
  282. package/dist/shell/DefaultLayout.js.map +1 -0
  283. package/dist/shell/DefaultMain.d.ts +1 -0
  284. package/dist/shell/DefaultMain.js +6 -0
  285. package/dist/shell/DefaultMain.js.map +1 -0
  286. package/dist/shell/Logo.d.ts +6 -0
  287. package/dist/shell/Logo.js +16 -0
  288. package/dist/shell/Logo.js.map +1 -0
  289. package/dist/shell/Shell.d.ts +1 -0
  290. package/dist/shell/Shell.js +10 -0
  291. package/dist/shell/Shell.js.map +1 -0
  292. package/dist/shell/Shell.messages.d.ts +63 -0
  293. package/dist/shell/Shell.messages.js +65 -0
  294. package/dist/shell/Shell.messages.js.map +1 -0
  295. package/dist/shell/app.d.ts +3 -0
  296. package/dist/shell/app.js +43 -0
  297. package/dist/shell/app.js.map +1 -0
  298. package/dist/shell/babel.config.d.ts +2 -0
  299. package/dist/shell/babel.config.js +4 -0
  300. package/dist/shell/babel.config.js.map +1 -0
  301. package/dist/shell/constants.d.ts +2 -0
  302. package/dist/shell/constants.js +3 -0
  303. package/dist/shell/constants.js.map +1 -0
  304. package/dist/shell/dev/devFooter/app.d.ts +3 -0
  305. package/dist/shell/dev/devFooter/app.js +36 -0
  306. package/dist/shell/dev/devFooter/app.js.map +1 -0
  307. package/dist/shell/dev/devFooter/index.js +2 -0
  308. package/dist/shell/dev/devFooter/index.js.map +1 -0
  309. package/dist/shell/dev/devHeader/BarContext.d.ts +7 -0
  310. package/dist/shell/dev/devHeader/BarContext.js +8 -0
  311. package/dist/shell/dev/devHeader/BarContext.js.map +1 -0
  312. package/dist/shell/dev/devHeader/BarLink.d.ts +1 -0
  313. package/dist/shell/dev/devHeader/BarLink.js +10 -0
  314. package/dist/shell/dev/devHeader/BarLink.js.map +1 -0
  315. package/dist/shell/dev/devHeader/BarProvider.d.ts +6 -0
  316. package/dist/shell/dev/devHeader/BarProvider.js +16 -0
  317. package/dist/shell/dev/devHeader/BarProvider.js.map +1 -0
  318. package/dist/shell/dev/devHeader/CoursesLink.d.ts +1 -0
  319. package/dist/shell/dev/devHeader/CoursesLink.js +10 -0
  320. package/dist/shell/dev/devHeader/CoursesLink.js.map +1 -0
  321. package/dist/shell/dev/devHeader/FooContext.d.ts +7 -0
  322. package/dist/shell/dev/devHeader/FooContext.js +8 -0
  323. package/dist/shell/dev/devHeader/FooContext.js.map +1 -0
  324. package/dist/shell/dev/devHeader/FooLink.d.ts +1 -0
  325. package/dist/shell/dev/devHeader/FooLink.js +10 -0
  326. package/dist/shell/dev/devHeader/FooLink.js.map +1 -0
  327. package/dist/shell/dev/devHeader/FooProvider.d.ts +6 -0
  328. package/dist/shell/dev/devHeader/FooProvider.js +16 -0
  329. package/dist/shell/dev/devHeader/FooProvider.js.map +1 -0
  330. package/dist/shell/dev/devHeader/app.d.ts +3 -0
  331. package/dist/shell/dev/devHeader/app.js +34 -0
  332. package/dist/shell/dev/devHeader/app.js.map +1 -0
  333. package/dist/shell/dev/devHeader/index.js +2 -0
  334. package/dist/shell/dev/devHeader/index.js.map +1 -0
  335. package/dist/shell/dev/devHeader/providers.d.ts +3 -0
  336. package/dist/shell/dev/devHeader/providers.js +8 -0
  337. package/dist/shell/dev/devHeader/providers.js.map +1 -0
  338. package/dist/shell/dev/devHome/HomePage.d.ts +1 -0
  339. package/dist/shell/dev/devHome/HomePage.js +14 -0
  340. package/dist/shell/dev/devHome/HomePage.js.map +1 -0
  341. package/dist/shell/dev/devHome/app.d.ts +3 -0
  342. package/dist/shell/dev/devHome/app.js +15 -0
  343. package/dist/shell/dev/devHome/app.js.map +1 -0
  344. package/dist/shell/dev/devHome/index.js +2 -0
  345. package/dist/shell/dev/devHome/index.js.map +1 -0
  346. package/dist/shell/dev/devHome/messages.d.ts +8 -0
  347. package/dist/shell/dev/devHome/messages.js +10 -0
  348. package/dist/shell/dev/devHome/messages.js.map +1 -0
  349. package/dist/shell/dev/index.d.ts +4 -0
  350. package/dist/shell/dev/index.js +5 -0
  351. package/dist/shell/dev/index.js.map +1 -0
  352. package/dist/shell/dev/slotShowcase/HorizontalSlotLayout.d.ts +1 -0
  353. package/dist/shell/dev/slotShowcase/HorizontalSlotLayout.js +8 -0
  354. package/dist/shell/dev/slotShowcase/HorizontalSlotLayout.js.map +1 -0
  355. package/dist/shell/dev/slotShowcase/LayoutWithOptions.d.ts +1 -0
  356. package/dist/shell/dev/slotShowcase/LayoutWithOptions.js +9 -0
  357. package/dist/shell/dev/slotShowcase/LayoutWithOptions.js.map +1 -0
  358. package/dist/shell/dev/slotShowcase/SlotShowcase.scss +50 -0
  359. package/dist/shell/dev/slotShowcase/SlotShowcasePage.d.ts +2 -0
  360. package/dist/shell/dev/slotShowcase/SlotShowcasePage.js +17 -0
  361. package/dist/shell/dev/slotShowcase/SlotShowcasePage.js.map +1 -0
  362. package/dist/shell/dev/slotShowcase/ToggleByRoleLayout.d.ts +1 -0
  363. package/dist/shell/dev/slotShowcase/ToggleByRoleLayout.js +11 -0
  364. package/dist/shell/dev/slotShowcase/ToggleByRoleLayout.js.map +1 -0
  365. package/dist/shell/dev/slotShowcase/WidgetWithOptions.d.ts +1 -0
  366. package/dist/shell/dev/slotShowcase/WidgetWithOptions.js +8 -0
  367. package/dist/shell/dev/slotShowcase/WidgetWithOptions.js.map +1 -0
  368. package/dist/shell/dev/slotShowcase/app.d.ts +3 -0
  369. package/dist/shell/dev/slotShowcase/app.js +372 -0
  370. package/dist/shell/dev/slotShowcase/app.js.map +1 -0
  371. package/dist/shell/dev/slotShowcase/index.js +2 -0
  372. package/dist/shell/dev/slotShowcase/index.js.map +1 -0
  373. package/dist/shell/footer/CenterLinks.d.ts +1 -0
  374. package/dist/shell/footer/CenterLinks.js +7 -0
  375. package/dist/shell/footer/CenterLinks.js.map +1 -0
  376. package/dist/shell/footer/CopyrightNotice.d.ts +10 -0
  377. package/dist/shell/footer/CopyrightNotice.js +10 -0
  378. package/dist/shell/footer/CopyrightNotice.js.map +1 -0
  379. package/dist/shell/footer/DesktopFooterLayout.d.ts +1 -0
  380. package/dist/shell/footer/DesktopFooterLayout.js +12 -0
  381. package/dist/shell/footer/DesktopFooterLayout.js.map +1 -0
  382. package/dist/shell/footer/Footer.d.ts +1 -0
  383. package/dist/shell/footer/Footer.js +6 -0
  384. package/dist/shell/footer/Footer.js.map +1 -0
  385. package/dist/shell/footer/LabeledLinkColumn.d.ts +1 -0
  386. package/dist/shell/footer/LabeledLinkColumn.js +11 -0
  387. package/dist/shell/footer/LabeledLinkColumn.js.map +1 -0
  388. package/dist/shell/footer/LanguageMenu.d.ts +1 -0
  389. package/dist/shell/footer/LanguageMenu.js +16 -0
  390. package/dist/shell/footer/LanguageMenu.js.map +1 -0
  391. package/dist/shell/footer/LanguageMenuItem.d.ts +8 -0
  392. package/dist/shell/footer/LanguageMenuItem.js +11 -0
  393. package/dist/shell/footer/LanguageMenuItem.js.map +1 -0
  394. package/dist/shell/footer/LeftLinks.d.ts +1 -0
  395. package/dist/shell/footer/LeftLinks.js +7 -0
  396. package/dist/shell/footer/LeftLinks.js.map +1 -0
  397. package/dist/shell/footer/LegalNotices.d.ts +1 -0
  398. package/dist/shell/footer/LegalNotices.js +10 -0
  399. package/dist/shell/footer/LegalNotices.js.map +1 -0
  400. package/dist/shell/footer/PoweredBy.d.ts +1 -0
  401. package/dist/shell/footer/PoweredBy.js +9 -0
  402. package/dist/shell/footer/PoweredBy.js.map +1 -0
  403. package/dist/shell/footer/RevealLinks.d.ts +1 -0
  404. package/dist/shell/footer/RevealLinks.js +16 -0
  405. package/dist/shell/footer/RevealLinks.js.map +1 -0
  406. package/dist/shell/footer/RightLinks.d.ts +1 -0
  407. package/dist/shell/footer/RightLinks.js +7 -0
  408. package/dist/shell/footer/RightLinks.js.map +1 -0
  409. package/dist/shell/footer/app.d.ts +3 -0
  410. package/dist/shell/footer/app.js +67 -0
  411. package/dist/shell/footer/app.js.map +1 -0
  412. package/dist/shell/footer/data/api.d.ts +1 -0
  413. package/dist/shell/footer/data/api.js +45 -0
  414. package/dist/shell/footer/data/api.js.map +1 -0
  415. package/dist/shell/footer/index.js +3 -0
  416. package/dist/shell/footer/index.js.map +1 -0
  417. package/dist/shell/header/AuthenticatedMenu.d.ts +5 -0
  418. package/dist/shell/header/AuthenticatedMenu.js +9 -0
  419. package/dist/shell/header/AuthenticatedMenu.js.map +1 -0
  420. package/dist/shell/header/Header.d.ts +1 -0
  421. package/dist/shell/header/Header.js +8 -0
  422. package/dist/shell/header/Header.js.map +1 -0
  423. package/dist/shell/header/HelpButton.d.ts +5 -0
  424. package/dist/shell/header/HelpButton.js +10 -0
  425. package/dist/shell/header/HelpButton.js.map +1 -0
  426. package/dist/shell/header/anonymous-menu/AnonymousMenu.d.ts +5 -0
  427. package/dist/shell/header/anonymous-menu/AnonymousMenu.js +7 -0
  428. package/dist/shell/header/anonymous-menu/AnonymousMenu.js.map +1 -0
  429. package/dist/shell/header/anonymous-menu/LoginButton.d.ts +3 -0
  430. package/dist/shell/header/anonymous-menu/LoginButton.js +22 -0
  431. package/dist/shell/header/anonymous-menu/LoginButton.js.map +1 -0
  432. package/dist/shell/header/anonymous-menu/RegisterButton.d.ts +3 -0
  433. package/dist/shell/header/anonymous-menu/RegisterButton.js +22 -0
  434. package/dist/shell/header/anonymous-menu/RegisterButton.js.map +1 -0
  435. package/dist/shell/header/app.d.ts +4 -0
  436. package/dist/shell/header/app.js +157 -0
  437. package/dist/shell/header/app.js.map +1 -0
  438. package/dist/shell/header/app.scss +20 -0
  439. package/dist/shell/header/constants.d.ts +3 -0
  440. package/dist/shell/header/constants.js +4 -0
  441. package/dist/shell/header/constants.js.map +1 -0
  442. package/dist/shell/header/course-bar/data/service.d.ts +11 -0
  443. package/dist/shell/header/course-bar/data/service.js +49 -0
  444. package/dist/shell/header/course-bar/data/service.js.map +1 -0
  445. package/dist/shell/header/course-bar/masquerade/MasqueradeBar.d.ts +1 -0
  446. package/dist/shell/header/course-bar/masquerade/MasqueradeBar.js +22 -0
  447. package/dist/shell/header/course-bar/masquerade/MasqueradeBar.js.map +1 -0
  448. package/dist/shell/header/course-bar/masquerade/MasqueradeContext.d.ts +3 -0
  449. package/dist/shell/header/course-bar/masquerade/MasqueradeContext.js +10 -0
  450. package/dist/shell/header/course-bar/masquerade/MasqueradeContext.js.map +1 -0
  451. package/dist/shell/header/course-bar/masquerade/StudioLink.d.ts +6 -0
  452. package/dist/shell/header/course-bar/masquerade/StudioLink.js +27 -0
  453. package/dist/shell/header/course-bar/masquerade/StudioLink.js.map +1 -0
  454. package/dist/shell/header/course-bar/masquerade/data/api.d.ts +29 -0
  455. package/dist/shell/header/course-bar/masquerade/data/api.js +33 -0
  456. package/dist/shell/header/course-bar/masquerade/data/api.js.map +1 -0
  457. package/dist/shell/header/course-bar/masquerade/hooks.d.ts +20 -0
  458. package/dist/shell/header/course-bar/masquerade/hooks.js +203 -0
  459. package/dist/shell/header/course-bar/masquerade/hooks.js.map +1 -0
  460. package/dist/shell/header/course-bar/masquerade/index.d.ts +1 -0
  461. package/dist/shell/header/course-bar/masquerade/index.js +2 -0
  462. package/dist/shell/header/course-bar/masquerade/index.js.map +1 -0
  463. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeUserNameInput.d.ts +7 -0
  464. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeUserNameInput.js +18 -0
  465. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeUserNameInput.js.map +1 -0
  466. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeWidget.d.ts +1 -0
  467. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeWidget.js +16 -0
  468. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeWidget.js.map +1 -0
  469. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeWidgetOption.d.ts +6 -0
  470. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeWidgetOption.js +18 -0
  471. package/dist/shell/header/course-bar/masquerade/masquerade-widget/MasqueradeWidgetOption.js.map +1 -0
  472. package/dist/shell/header/course-bar/masquerade/masquerade-widget/index.d.ts +2 -0
  473. package/dist/shell/header/course-bar/masquerade/masquerade-widget/index.js +3 -0
  474. package/dist/shell/header/course-bar/masquerade/masquerade-widget/index.js.map +1 -0
  475. package/dist/shell/header/course-bar/masquerade/masquerade-widget/messages.d.ts +28 -0
  476. package/dist/shell/header/course-bar/masquerade/masquerade-widget/messages.js +30 -0
  477. package/dist/shell/header/course-bar/masquerade/masquerade-widget/messages.js.map +1 -0
  478. package/dist/shell/header/course-bar/masquerade/messages.d.ts +28 -0
  479. package/dist/shell/header/course-bar/masquerade/messages.js +30 -0
  480. package/dist/shell/header/course-bar/masquerade/messages.js.map +1 -0
  481. package/dist/shell/header/course-bar/navigation/CourseTabsNavigation.d.ts +3 -0
  482. package/dist/shell/header/course-bar/navigation/CourseTabsNavigation.js +39 -0
  483. package/dist/shell/header/course-bar/navigation/CourseTabsNavigation.js.map +1 -0
  484. package/dist/shell/header/course-bar/navigation/course-tabs-navigation.scss +7 -0
  485. package/dist/shell/header/course-bar/navigation/messages.d.ts +8 -0
  486. package/dist/shell/header/course-bar/navigation/messages.js +10 -0
  487. package/dist/shell/header/course-bar/navigation/messages.js.map +1 -0
  488. package/dist/shell/header/course-bar/utils.d.ts +3 -0
  489. package/dist/shell/header/course-bar/utils.js +54 -0
  490. package/dist/shell/header/course-bar/utils.js.map +1 -0
  491. package/dist/shell/header/desktop/DesktopLayout.d.ts +1 -0
  492. package/dist/shell/header/desktop/DesktopLayout.js +10 -0
  493. package/dist/shell/header/desktop/DesktopLayout.js.map +1 -0
  494. package/dist/shell/header/desktop/PrimaryNavLinks.d.ts +1 -0
  495. package/dist/shell/header/desktop/PrimaryNavLinks.js +7 -0
  496. package/dist/shell/header/desktop/PrimaryNavLinks.js.map +1 -0
  497. package/dist/shell/header/desktop/SecondaryNavLinks.d.ts +1 -0
  498. package/dist/shell/header/desktop/SecondaryNavLinks.js +7 -0
  499. package/dist/shell/header/desktop/SecondaryNavLinks.js.map +1 -0
  500. package/dist/shell/header/helpButtonSlotOperation.d.ts +6 -0
  501. package/dist/shell/header/helpButtonSlotOperation.js +14 -0
  502. package/dist/shell/header/helpButtonSlotOperation.js.map +1 -0
  503. package/dist/shell/header/index.d.ts +5 -0
  504. package/dist/shell/header/index.js +6 -0
  505. package/dist/shell/header/index.js.map +1 -0
  506. package/dist/shell/header/mobile/MobileLayout.d.ts +1 -0
  507. package/dist/shell/header/mobile/MobileLayout.js +17 -0
  508. package/dist/shell/header/mobile/MobileLayout.js.map +1 -0
  509. package/dist/shell/header/mobile/MobileNavLinks.d.ts +1 -0
  510. package/dist/shell/header/mobile/MobileNavLinks.js +7 -0
  511. package/dist/shell/header/mobile/MobileNavLinks.js.map +1 -0
  512. package/dist/shell/index.d.ts +8 -0
  513. package/dist/shell/index.js +9 -0
  514. package/dist/shell/index.js.map +1 -0
  515. package/dist/shell/jest.config.d.ts +15 -0
  516. package/dist/shell/jest.config.js +32 -0
  517. package/dist/shell/jest.config.js.map +1 -0
  518. package/dist/shell/layer-order.scss +1 -0
  519. package/dist/shell/menus/LinkMenuItem.d.ts +9 -0
  520. package/dist/shell/menus/LinkMenuItem.js +38 -0
  521. package/dist/shell/menus/LinkMenuItem.js.map +1 -0
  522. package/dist/shell/menus/NavDropdownMenuSlot.d.ts +7 -0
  523. package/dist/shell/menus/NavDropdownMenuSlot.js +14 -0
  524. package/dist/shell/menus/NavDropdownMenuSlot.js.map +1 -0
  525. package/dist/shell/menus/ProfileLinkMenuItem.d.ts +8 -0
  526. package/dist/shell/menus/ProfileLinkMenuItem.js +16 -0
  527. package/dist/shell/menus/ProfileLinkMenuItem.js.map +1 -0
  528. package/dist/shell/menus/data/utils.d.ts +4 -0
  529. package/dist/shell/menus/data/utils.js +13 -0
  530. package/dist/shell/menus/data/utils.js.map +1 -0
  531. package/dist/shell/router/createRouter.d.ts +1 -0
  532. package/dist/shell/router/createRouter.js +26 -0
  533. package/dist/shell/router/createRouter.js.map +1 -0
  534. package/dist/shell/router/getAppRoutes.d.ts +2 -0
  535. package/dist/shell/router/getAppRoutes.js +27 -0
  536. package/dist/shell/router/getAppRoutes.js.map +1 -0
  537. package/dist/shell/setupTest.d.ts +1 -0
  538. package/dist/shell/setupTest.js +12 -0
  539. package/dist/shell/setupTest.js.map +1 -0
  540. package/dist/shell/site.config.dev.d.ts +4 -0
  541. package/dist/shell/site.config.dev.js +43 -0
  542. package/dist/shell/site.config.dev.js.map +1 -0
  543. package/dist/shell/site.d.ts +1 -0
  544. package/dist/shell/site.js +45 -0
  545. package/dist/shell/site.js.map +1 -0
  546. package/dist/shell/style.d.ts +3 -0
  547. package/dist/shell/style.js +10 -0
  548. package/dist/shell/style.js.map +1 -0
  549. package/dist/shell/style.scss +147 -0
  550. package/dist/tools/babel/babel.config.d.ts +12 -0
  551. package/dist/tools/babel.config.d.ts +2 -0
  552. package/dist/tools/babel.config.js +3 -0
  553. package/dist/tools/cli/commands/serve.d.ts +1 -0
  554. package/dist/tools/cli/commands/translations.d.ts +2 -0
  555. package/dist/tools/cli/commands/translations.js +20 -0
  556. package/dist/tools/cli/openedx.d.ts +2 -0
  557. package/dist/tools/cli/openedx.js +111 -0
  558. package/dist/tools/cli/utils/ensureConfigFilenameOption.d.ts +2 -0
  559. package/dist/tools/cli/utils/formatter.d.ts +1 -0
  560. package/dist/tools/cli/utils/formatter.js +3 -0
  561. package/dist/tools/cli/utils/getResolvedConfigPath.d.ts +2 -0
  562. package/dist/tools/cli/utils/prettyPrintTitle.d.ts +1 -0
  563. package/dist/tools/cli/utils/printUsage.d.ts +1 -0
  564. package/dist/tools/cli/utils/printUsage.js +47 -0
  565. package/dist/tools/cli/utils/translations/index.d.ts +2 -0
  566. package/dist/tools/cli/utils/translations/index.js +7 -0
  567. package/dist/tools/cli/utils/translations/messagesObject.d.ts +26 -0
  568. package/dist/tools/cli/utils/translations/messagesObject.js +66 -0
  569. package/dist/tools/cli/utils/translations/prepare.d.ts +5 -0
  570. package/dist/tools/cli/utils/translations/prepare.js +98 -0
  571. package/dist/tools/cli/utils/translations/pull.d.ts +6 -0
  572. package/dist/tools/cli/utils/translations/pull.js +102 -0
  573. package/dist/tools/config-helpers/createConfig.d.ts +2 -0
  574. package/dist/tools/config-helpers/createLintConfig.d.ts +2 -0
  575. package/dist/tools/config-helpers/getBaseConfig.d.ts +2 -0
  576. package/dist/tools/defaultConfigPaths.d.ts +8 -0
  577. package/dist/tools/eslint/base.eslint.config.d.ts +3 -0
  578. package/dist/tools/eslint/base.eslint.config.js +114 -0
  579. package/dist/tools/eslint.config.d.ts +3 -0
  580. package/dist/tools/index.d.ts +3 -0
  581. package/dist/tools/jest/jest.config.d.ts +14 -0
  582. package/dist/tools/jest.config.d.ts +8 -0
  583. package/dist/tools/types.d.ts +20 -0
  584. package/dist/tools/types.js +25 -0
  585. package/dist/tools/typescript/tsconfig.json +33 -0
  586. package/dist/tools/webpack/common-config/all/getCodeRules.d.ts +2 -0
  587. package/dist/tools/webpack/common-config/all/getFileLoaderRules.d.ts +11 -0
  588. package/dist/tools/webpack/common-config/all/getImageMinimizer.d.ts +5 -0
  589. package/dist/tools/webpack/common-config/all/getStylesheetRule.d.ts +12 -0
  590. package/dist/tools/webpack/common-config/all/getStylesheetRule.js +150 -0
  591. package/dist/tools/webpack/common-config/all/postcssWrapLayer.d.ts +4 -0
  592. package/dist/tools/webpack/common-config/all/postcssWrapLayer.js +32 -0
  593. package/dist/tools/webpack/common-config/dev/getDevServer.d.ts +2 -0
  594. package/dist/tools/webpack/common-config/dev/getDevServer.js +36 -0
  595. package/dist/tools/webpack/common-config/index.d.ts +7 -0
  596. package/dist/tools/webpack/common-config/index.js +20 -0
  597. package/dist/tools/webpack/common-config/site/getHtmlWebpackPlugin.d.ts +2 -0
  598. package/dist/tools/webpack/common-config/site/getHtmlWebpackPlugin.js +24 -0
  599. package/dist/tools/webpack/common-config/site/getI18nMessagesFallbackPlugin/emptyI18n.d.ts +2 -0
  600. package/dist/tools/webpack/common-config/site/getI18nMessagesFallbackPlugin/emptyI18n.js +3 -0
  601. package/dist/tools/webpack/common-config/site/getI18nMessagesFallbackPlugin/index.d.ts +2 -0
  602. package/dist/tools/webpack/common-config/site/getI18nMessagesFallbackPlugin/index.js +26 -0
  603. package/dist/tools/webpack/plugins/html-webpack-new-relic-plugin/HtmlWebpackNewRelicPlugin.d.ts +16 -0
  604. package/dist/tools/webpack/plugins/html-webpack-new-relic-plugin/index.d.ts +2 -0
  605. package/dist/tools/webpack/plugins/html-webpack-new-relic-plugin/test/fixtures/entry.d.ts +1 -0
  606. package/dist/tools/webpack/utils/getPublicPath.d.ts +1 -0
  607. package/dist/tools/webpack/utils/getPublicPath.js +6 -0
  608. package/dist/tools/webpack/utils/getResolvedSiteConfigPath.d.ts +1 -0
  609. package/dist/tools/webpack/utils/getResolvedSiteI18nPath.d.ts +1 -0
  610. package/dist/tools/webpack/utils/getResolvedSiteI18nPath.js +25 -0
  611. package/dist/tools/webpack/webpack.config.build.d.ts +3 -0
  612. package/dist/tools/webpack/webpack.config.build.js +78 -0
  613. package/dist/tools/webpack/webpack.config.dev.d.ts +3 -0
  614. package/dist/tools/webpack/webpack.config.dev.js +78 -0
  615. package/dist/tools/webpack/webpack.config.dev.shell.d.ts +3 -0
  616. package/dist/tools/webpack/webpack.config.dev.shell.js +105 -0
  617. package/dist/types.d.ts +93 -0
  618. package/dist/types.js +7 -0
  619. package/dist/types.js.map +1 -0
  620. package/package.json +45 -32
  621. package/config/eslint/base.eslint.config.js +0 -113
  622. package/config/tsconfig.json +0 -32
  623. package/config/types.js +0 -23
  624. package/config/webpack/common-config/all/getIgnoreWarnings.js +0 -14
  625. package/config/webpack/common-config/all/getStylesheetRule.js +0 -112
  626. package/config/webpack/common-config/dev/getDevServer.js +0 -38
  627. package/config/webpack/common-config/index.js +0 -18
  628. package/config/webpack/common-config/site/getHtmlWebpackPlugin.js +0 -16
  629. package/config/webpack/plugins/html-webpack-new-relic-plugin/test/HtmlWebpackNewRelicPlugin.test.js +0 -66
  630. package/config/webpack/utils/getLocalAliases.js +0 -65
  631. package/config/webpack/utils/getPublicPath.js +0 -6
  632. package/config/webpack/webpack.config.build.js +0 -69
  633. package/config/webpack/webpack.config.dev.js +0 -69
  634. package/config/webpack/webpack.config.dev.shell.js +0 -103
  635. package/index.ts +0 -7
  636. package/runtime/__mocks__/file.js +0 -1
  637. package/runtime/__mocks__/svg.js +0 -1
  638. package/runtime/__mocks__/universal-cookie.js +0 -6
  639. package/runtime/analytics/MockAnalyticsService.js +0 -71
  640. package/runtime/analytics/SegmentAnalyticsService.js +0 -243
  641. package/runtime/analytics/index.ts +0 -12
  642. package/runtime/analytics/interface.js +0 -145
  643. package/runtime/analytics/interface.test.js +0 -242
  644. package/runtime/auth/AxiosCsrfTokenService.js +0 -60
  645. package/runtime/auth/AxiosJwtAuthService.js +0 -363
  646. package/runtime/auth/AxiosJwtAuthService.test.jsx +0 -1076
  647. package/runtime/auth/AxiosJwtTokenService.js +0 -134
  648. package/runtime/auth/LocalForageCache.js +0 -76
  649. package/runtime/auth/MockAuthService.js +0 -278
  650. package/runtime/auth/index.ts +0 -19
  651. package/runtime/auth/interceptors/createCsrfTokenProviderInterceptor.js +0 -36
  652. package/runtime/auth/interceptors/createJwtTokenProviderInterceptor.js +0 -37
  653. package/runtime/auth/interceptors/createProcessAxiosRequestErrorInterceptor.js +0 -20
  654. package/runtime/auth/interceptors/createRetryInterceptor.js +0 -74
  655. package/runtime/auth/interceptors/createRetryInterceptor.test.js +0 -23
  656. package/runtime/auth/interface.js +0 -309
  657. package/runtime/auth/utils.js +0 -105
  658. package/runtime/babel.config.js +0 -3
  659. package/runtime/config/getExternalLinkUrl.test.js +0 -76
  660. package/runtime/config/index.ts +0 -294
  661. package/runtime/constants.ts +0 -68
  662. package/runtime/i18n/index.js +0 -118
  663. package/runtime/i18n/injectIntlWithShim.jsx +0 -48
  664. package/runtime/i18n/lib.test.js +0 -230
  665. package/runtime/i18n/lib.ts +0 -272
  666. package/runtime/index.ts +0 -139
  667. package/runtime/initialize.async.function.config.test.js +0 -43
  668. package/runtime/initialize.const.config.test.js +0 -41
  669. package/runtime/initialize.function.config.test.js +0 -41
  670. package/runtime/initialize.js +0 -352
  671. package/runtime/initialize.test.js +0 -356
  672. package/runtime/jest.config.js +0 -33
  673. package/runtime/logging/MockLoggingService.js +0 -31
  674. package/runtime/logging/NewRelicLoggingService.js +0 -184
  675. package/runtime/logging/NewRelicLoggingService.test.js +0 -214
  676. package/runtime/logging/index.ts +0 -9
  677. package/runtime/logging/interface.js +0 -109
  678. package/runtime/logging/types.ts +0 -4
  679. package/runtime/react/AuthenticatedPageRoute.jsx +0 -43
  680. package/runtime/react/AuthenticatedPageRoute.test.jsx +0 -135
  681. package/runtime/react/CombinedAppProvider.tsx +0 -46
  682. package/runtime/react/CurrentAppContext.tsx +0 -25
  683. package/runtime/react/CurrentAppProvider.tsx +0 -46
  684. package/runtime/react/Divider.tsx +0 -5
  685. package/runtime/react/ErrorBoundary.jsx +0 -47
  686. package/runtime/react/ErrorBoundary.test.jsx +0 -83
  687. package/runtime/react/ErrorPage.jsx +0 -72
  688. package/runtime/react/LoginRedirect.jsx +0 -16
  689. package/runtime/react/PageWrap.jsx +0 -24
  690. package/runtime/react/SiteContext.tsx +0 -32
  691. package/runtime/react/SiteProvider.test.jsx +0 -66
  692. package/runtime/react/SiteProvider.tsx +0 -101
  693. package/runtime/react/constants.ts +0 -3
  694. package/runtime/react/hooks/index.ts +0 -8
  695. package/runtime/react/hooks/theme/useTheme.test.ts +0 -221
  696. package/runtime/react/hooks/theme/useTheme.ts +0 -179
  697. package/runtime/react/hooks/theme/useThemeConfig.test.ts +0 -107
  698. package/runtime/react/hooks/theme/useThemeConfig.ts +0 -34
  699. package/runtime/react/hooks/theme/useThemeCore.test.ts +0 -65
  700. package/runtime/react/hooks/theme/useThemeCore.ts +0 -52
  701. package/runtime/react/hooks/theme/useThemeVariants.test.ts +0 -97
  702. package/runtime/react/hooks/theme/useThemeVariants.ts +0 -116
  703. package/runtime/react/hooks/theme/useTrackColorSchemeChoice.test.ts +0 -54
  704. package/runtime/react/hooks/theme/useTrackColorSchemeChoice.ts +0 -30
  705. package/runtime/react/hooks/theme/utils.ts +0 -11
  706. package/runtime/react/hooks/useActiveRoles.ts +0 -15
  707. package/runtime/react/hooks/useActiveRouteRoleWatcher.ts +0 -31
  708. package/runtime/react/hooks/useAppConfig.ts +0 -9
  709. package/runtime/react/hooks/useAuthenticatedUser.test.tsx +0 -41
  710. package/runtime/react/hooks/useAuthenticatedUser.ts +0 -9
  711. package/runtime/react/hooks/useSiteConfig.test.tsx +0 -13
  712. package/runtime/react/hooks/useSiteConfig.ts +0 -9
  713. package/runtime/react/hooks/useSiteEvent.ts +0 -24
  714. package/runtime/react/index.ts +0 -19
  715. package/runtime/react/reducers.ts +0 -40
  716. package/runtime/routing/index.ts +0 -1
  717. package/runtime/routing/utils.test.ts +0 -7
  718. package/runtime/routing/utils.ts +0 -34
  719. package/runtime/scripts/GoogleAnalyticsLoader.test.ts +0 -77
  720. package/runtime/scripts/GoogleAnalyticsLoader.ts +0 -59
  721. package/runtime/scripts/index.ts +0 -1
  722. package/runtime/setupTest.js +0 -14
  723. package/runtime/site.config.test.tsx +0 -33
  724. package/runtime/slots/Slot.test.tsx +0 -40
  725. package/runtime/slots/Slot.tsx +0 -32
  726. package/runtime/slots/SlotContext.tsx +0 -8
  727. package/runtime/slots/hooks.ts +0 -35
  728. package/runtime/slots/layout/DefaultSlotLayout.test.tsx +0 -31
  729. package/runtime/slots/layout/DefaultSlotLayout.tsx +0 -9
  730. package/runtime/slots/layout/hooks.test.tsx +0 -178
  731. package/runtime/slots/layout/hooks.ts +0 -65
  732. package/runtime/slots/layout/types.ts +0 -45
  733. package/runtime/slots/layout/utils.test.ts +0 -67
  734. package/runtime/slots/layout/utils.ts +0 -14
  735. package/runtime/slots/types.ts +0 -24
  736. package/runtime/slots/utils.test.ts +0 -64
  737. package/runtime/slots/utils.ts +0 -78
  738. package/runtime/slots/widget/WidgetContext.tsx +0 -9
  739. package/runtime/slots/widget/WidgetProvider.tsx +0 -30
  740. package/runtime/slots/widget/hooks.ts +0 -105
  741. package/runtime/slots/widget/iframe/IFrameContentWrapper.messages.tsx +0 -16
  742. package/runtime/slots/widget/iframe/IFrameContentWrapper.tsx +0 -84
  743. package/runtime/slots/widget/iframe/IFrameWidget.tsx +0 -59
  744. package/runtime/slots/widget/iframe/constants.ts +0 -19
  745. package/runtime/slots/widget/iframe/hooks.ts +0 -179
  746. package/runtime/slots/widget/iframe/index.ts +0 -6
  747. package/runtime/slots/widget/iframe/types.ts +0 -7
  748. package/runtime/slots/widget/types.ts +0 -134
  749. package/runtime/slots/widget/utils.tsx +0 -201
  750. package/runtime/subscriptions.ts +0 -60
  751. package/runtime/testing/index.ts +0 -9
  752. package/runtime/testing/initializeMockApp.test.ts +0 -66
  753. package/runtime/testing/initializeMockApp.ts +0 -86
  754. package/runtime/testing/mockMessages.ts +0 -23
  755. package/runtime/utils.js +0 -178
  756. package/runtime/utils.test.js +0 -116
  757. package/shell/DefaultLayout.tsx +0 -18
  758. package/shell/DefaultMain.tsx +0 -7
  759. package/shell/Logo.test.tsx +0 -32
  760. package/shell/Logo.tsx +0 -28
  761. package/shell/Shell.messages.ts +0 -61
  762. package/shell/Shell.tsx +0 -18
  763. package/shell/__mocks__/file.js +0 -1
  764. package/shell/__mocks__/svg.js +0 -1
  765. package/shell/__mocks__/universal-cookie.js +0 -6
  766. package/shell/app.scss +0 -150
  767. package/shell/app.ts +0 -38
  768. package/shell/babel.config.js +0 -3
  769. package/shell/dev/devFooter/app.tsx +0 -43
  770. package/shell/dev/devHeader/BarContext.tsx +0 -13
  771. package/shell/dev/devHeader/BarLink.tsx +0 -16
  772. package/shell/dev/devHeader/BarProvider.tsx +0 -25
  773. package/shell/dev/devHeader/CoursesLink.tsx +0 -16
  774. package/shell/dev/devHeader/FooContext.tsx +0 -13
  775. package/shell/dev/devHeader/FooLink.tsx +0 -16
  776. package/shell/dev/devHeader/FooProvider.tsx +0 -25
  777. package/shell/dev/devHeader/app.tsx +0 -53
  778. package/shell/dev/devHeader/providers.tsx +0 -11
  779. package/shell/dev/devHome/HomePage.tsx +0 -28
  780. package/shell/dev/devHome/app.ts +0 -18
  781. package/shell/dev/devHome/i18n/index.ts +0 -27
  782. package/shell/dev/devHome/messages.ts +0 -11
  783. package/shell/dev/devUser/app.tsx +0 -24
  784. package/shell/dev/devUser/index.ts +0 -1
  785. package/shell/dev/index.ts +0 -5
  786. package/shell/dev/slotShowcase/HorizontalSlotLayout.tsx +0 -11
  787. package/shell/dev/slotShowcase/LayoutWithOptions.tsx +0 -17
  788. package/shell/dev/slotShowcase/SlotShowcasePage.tsx +0 -66
  789. package/shell/dev/slotShowcase/WidgetWithOptions.tsx +0 -11
  790. package/shell/dev/slotShowcase/app.tsx +0 -373
  791. package/shell/footer/CenterLinks.tsx +0 -11
  792. package/shell/footer/CopyrightNotice.tsx +0 -36
  793. package/shell/footer/Footer.tsx +0 -34
  794. package/shell/footer/LabeledLinkColumn.tsx +0 -19
  795. package/shell/footer/LanguageMenu.tsx +0 -35
  796. package/shell/footer/LanguageMenuItem.tsx +0 -23
  797. package/shell/footer/LeftLinks.tsx +0 -11
  798. package/shell/footer/LegalNotices.tsx +0 -17
  799. package/shell/footer/PoweredBy.tsx +0 -17
  800. package/shell/footer/RevealLinks.tsx +0 -43
  801. package/shell/footer/RightLinks.tsx +0 -11
  802. package/shell/footer/app.tsx +0 -73
  803. package/shell/footer/data/api.ts +0 -48
  804. package/shell/header/AuthenticatedMenu.tsx +0 -32
  805. package/shell/header/Header.tsx +0 -17
  806. package/shell/header/anonymous-menu/AnonymousMenu.tsx +0 -14
  807. package/shell/header/anonymous-menu/LoginButton.tsx +0 -14
  808. package/shell/header/anonymous-menu/RegisterButton.tsx +0 -15
  809. package/shell/header/app.tsx +0 -142
  810. package/shell/header/desktop/DesktopLayout.tsx +0 -22
  811. package/shell/header/desktop/PrimaryNavLinks.tsx +0 -10
  812. package/shell/header/desktop/SecondaryNavLinks.tsx +0 -10
  813. package/shell/header/index.ts +0 -2
  814. package/shell/header/mobile/MobileLayout.tsx +0 -47
  815. package/shell/header/mobile/MobileNavLinks.tsx +0 -10
  816. package/shell/i18n/index.ts +0 -25
  817. package/shell/index.ts +0 -7
  818. package/shell/jest.config.js +0 -31
  819. package/shell/menus/LinkMenuItem.tsx +0 -64
  820. package/shell/menus/NavDropdownMenuSlot.tsx +0 -29
  821. package/shell/menus/ProfileLinkMenuItem.tsx +0 -33
  822. package/shell/menus/data/utils.ts +0 -19
  823. package/shell/public/index.html +0 -10
  824. package/shell/router/createRouter.test.tsx +0 -50
  825. package/shell/router/createRouter.ts +0 -17
  826. package/shell/router/getAppRoutes.test.tsx +0 -59
  827. package/shell/router/getAppRoutes.ts +0 -21
  828. package/shell/setupTest.js +0 -13
  829. package/shell/site.config.dev.tsx +0 -49
  830. package/shell/site.config.test.tsx +0 -16
  831. package/shell/site.tsx +0 -41
  832. package/tools/dist/babel/babel.config.js +0 -28
  833. package/tools/dist/cli/intl-imports.js +0 -233
  834. package/tools/dist/cli/intl-imports.test.js +0 -146
  835. package/tools/dist/cli/openedx.js +0 -86
  836. package/tools/dist/cli/transifex-utils.js +0 -68
  837. package/tools/dist/cli/utils/formatter.js +0 -10
  838. package/tools/dist/cli/utils/printUsage.js +0 -39
  839. package/tools/dist/config-helpers/createConfig.js +0 -13
  840. package/tools/dist/config-helpers/createLintConfig.js +0 -16
  841. package/tools/dist/config-helpers/getBaseConfig.js +0 -12
  842. package/tools/dist/defaultConfigPaths.js +0 -35
  843. package/tools/dist/eslint/base.eslint.config.js +0 -113
  844. package/tools/dist/index.js +0 -12
  845. package/tools/dist/jest/jest.config.js +0 -30
  846. package/tools/dist/types.js +0 -23
  847. package/tools/dist/typescript/tsconfig.json +0 -32
  848. package/tools/dist/webpack/common-config/all/getCodeRules.js +0 -52
  849. package/tools/dist/webpack/common-config/all/getFileLoaderRules.js +0 -26
  850. package/tools/dist/webpack/common-config/all/getIgnoreWarnings.js +0 -14
  851. package/tools/dist/webpack/common-config/all/getImageMinimizer.js +0 -25
  852. package/tools/dist/webpack/common-config/all/getStylesheetRule.js +0 -112
  853. package/tools/dist/webpack/common-config/dev/getDevServer.js +0 -38
  854. package/tools/dist/webpack/common-config/index.js +0 -18
  855. package/tools/dist/webpack/common-config/site/getHtmlWebpackPlugin.js +0 -16
  856. package/tools/dist/webpack/plugins/html-webpack-new-relic-plugin/HtmlWebpackNewRelicPlugin.js +0 -91
  857. package/tools/dist/webpack/plugins/html-webpack-new-relic-plugin/index.js +0 -7
  858. package/tools/dist/webpack/plugins/html-webpack-new-relic-plugin/test/HtmlWebpackNewRelicPlugin.test.js +0 -66
  859. package/tools/dist/webpack/plugins/html-webpack-new-relic-plugin/test/fixtures/entry.js +0 -3
  860. package/tools/dist/webpack/utils/getLocalAliases.js +0 -65
  861. package/tools/dist/webpack/utils/getPublicPath.js +0 -6
  862. package/tools/dist/webpack/utils/getResolvedSiteConfigPath.js +0 -32
  863. package/tools/dist/webpack/webpack.config.build.js +0 -69
  864. package/tools/dist/webpack/webpack.config.dev.js +0 -69
  865. package/tools/dist/webpack/webpack.config.dev.shell.js +0 -103
  866. package/types.ts +0 -119
  867. /package/{runtime/react/hooks/theme/index.ts → dist/runtime/react/hooks/theme/index.d.ts} +0 -0
  868. /package/{runtime/slots/index.ts → dist/runtime/slots/index.d.ts} +0 -0
  869. /package/{runtime/slots/layout/index.ts → dist/runtime/slots/layout/index.d.ts} +0 -0
  870. /package/{runtime/slots/widget/index.ts → dist/runtime/slots/widget/index.d.ts} +0 -0
  871. /package/{shell/dev/devFooter/index.ts → dist/shell/dev/devFooter/index.d.ts} +0 -0
  872. /package/{shell/dev/devHeader/index.ts → dist/shell/dev/devHeader/index.d.ts} +0 -0
  873. /package/{shell/dev/devHome/index.ts → dist/shell/dev/devHome/index.d.ts} +0 -0
  874. /package/{shell/dev/slotShowcase/index.ts → dist/shell/dev/slotShowcase/index.d.ts} +0 -0
  875. /package/{shell/footer/index.ts → dist/shell/footer/index.d.ts} +0 -0
  876. /package/{config → dist/tools}/babel/babel.config.js +0 -0
  877. /package/{tools/dist → dist/tools}/cli/commands/serve.js +0 -0
  878. /package/{tools/dist → dist/tools}/cli/utils/ensureConfigFilenameOption.js +0 -0
  879. /package/{tools/dist → dist/tools}/cli/utils/getResolvedConfigPath.js +0 -0
  880. /package/{tools/dist → dist/tools}/cli/utils/prettyPrintTitle.js +0 -0
  881. /package/{config → dist/tools}/config-helpers/createConfig.js +0 -0
  882. /package/{config → dist/tools}/config-helpers/createLintConfig.js +0 -0
  883. /package/{config → dist/tools}/config-helpers/getBaseConfig.js +0 -0
  884. /package/{config → dist/tools}/defaultConfigPaths.js +0 -0
  885. /package/{tools/dist → dist/tools}/eslint.config.js +0 -0
  886. /package/{config → dist/tools}/index.js +0 -0
  887. /package/{config → dist/tools}/jest/jest.config.js +0 -0
  888. /package/{tools/dist → dist/tools}/jest.config.js +0 -0
  889. /package/{config → dist/tools}/webpack/common-config/all/getCodeRules.js +0 -0
  890. /package/{config → dist/tools}/webpack/common-config/all/getFileLoaderRules.js +0 -0
  891. /package/{config → dist/tools}/webpack/common-config/all/getImageMinimizer.js +0 -0
  892. /package/{config → dist/tools}/webpack/plugins/html-webpack-new-relic-plugin/HtmlWebpackNewRelicPlugin.js +0 -0
  893. /package/{config → dist/tools}/webpack/plugins/html-webpack-new-relic-plugin/index.js +0 -0
  894. /package/{config → dist/tools}/webpack/plugins/html-webpack-new-relic-plugin/test/fixtures/entry.js +0 -0
  895. /package/{config → dist/tools}/webpack/utils/getResolvedSiteConfigPath.js +0 -0
@@ -1,294 +0,0 @@
1
- /**
2
- * #### Import members from **@edx/frontend-base**
3
- *
4
- * The configuration module provides utilities for working with an application's configuration
5
- * document (SiteConfig). Configuration variables can be supplied to the
6
- * application in three different ways. They are applied in the following order:
7
- *
8
- * - Site Configuration File (site.config.tsx)
9
- * - Initialization Config Handler
10
- * - Runtime Configuration
11
- *
12
- * Last one in wins, and are deep merged together. Variables with the same name defined via the
13
- * later methods will override any defined using an earlier method. i.e., if a variable is defined
14
- * in Runtime Configuration, that will override the same variable defined in either of the earlier
15
- * methods. Configuration defined in a JS file will override any default values below.
16
- *
17
- * ##### Site Configuration File
18
- *
19
- * Configuration variables can be supplied in a file named site.config.tsx. This file must
20
- * export either an Object containing configuration variables or a function. The function must
21
- * return an Object containing configuration variables or, alternately, a promise which resolves to
22
- * an Object.
23
- *
24
- * Using a function or async function allows the configuration to be resolved at runtime (because
25
- * the function will be executed at runtime). This is not common, and the capability is included
26
- * for the sake of flexibility.
27
- *
28
- * The Site Configuration File is well-suited to extensibility use cases or component overrides,
29
- * in that the configuration file can depend on any installed JavaScript module. It is also the
30
- * preferred way of doing build-time configuration if runtime configuration isn't used by your
31
- * deployment of the platform.
32
- *
33
- * Exporting a config object:
34
- * ```
35
- * const siteConfig = {
36
- * lmsBaseUrl: 'http://localhost:18000'
37
- * };
38
- *
39
- * export default siteConfig;
40
- * ```
41
- *
42
- * Exporting a function that returns an object:
43
- * ```
44
- * function getSiteConfig() {
45
- * return {
46
- * lmsBaseUrl: 'http://localhost:18000'
47
- * };
48
- * }
49
- * ```
50
- *
51
- * Exporting a function that returns a promise that resolves to an object:
52
- * ```
53
- * function getAsyncSiteConfig() {
54
- * return new Promise((resolve, reject) => {
55
- * resolve({
56
- * lmsBaseUrl: 'http://localhost:18000'
57
- * });
58
- * });
59
- * }
60
- *
61
- * export default getAsyncSiteConfig;
62
- * ```
63
- *
64
- * ##### Initialization Config Handler
65
- *
66
- * The configuration document can be extended by
67
- * applications at run-time using a `config` initialization handler. Please see the Initialization
68
- * documentation for more information on handlers and initialization phases.
69
- *
70
- * ```
71
- * initialize({
72
- * handlers: {
73
- * config: () => {
74
- * mergeSiteConfig({
75
- * CUSTOM_VARIABLE: 'custom value',
76
- * lmsBaseUrl: 'http://localhost:18001' // You can override variables, but this is uncommon.
77
- * }, 'App config override handler');
78
- * },
79
- * },
80
- * });
81
- * ```
82
- *
83
- * ##### Runtime Configuration
84
- *
85
- * Configuration variables can also be supplied using the "runtime configuration" method, taking
86
- * advantage of the Micro-frontend Config API in edx-platform. More information on this API can be
87
- * found in the ADR which introduced it:
88
- *
89
- * https://github.com/openedx/edx-platform/blob/master/lms/djangoapps/mfe_config_api/docs/decisions/0001-mfe-config-api.rst
90
- *
91
- * The runtime configuration method can be enabled by supplying a mfeConfigApiUrl via one of the other
92
- * two configuration methods above.
93
- *
94
- * Runtime configuration is particularly useful if you need to supply different configurations to
95
- * a single deployment of a micro-frontend, for instance. It is also a perfectly valid alternative
96
- * to build-time configuration, though it introduces an additional API call to edx-platform on MFE
97
- * initialization.
98
- *
99
- *
100
- * @module Config
101
- */
102
-
103
- import merge from 'lodash.merge';
104
- import {
105
- AppConfig,
106
- EnvironmentTypes,
107
- SiteConfig
108
- } from '../../types';
109
- import { ACTIVE_ROLES_CHANGED, CONFIG_CHANGED } from '../constants';
110
- import { publish } from '../subscriptions';
111
-
112
- let siteConfig: SiteConfig = {
113
- // Required
114
- siteId: '',
115
- baseUrl: '',
116
- siteName: '',
117
- loginUrl: '',
118
- logoutUrl: '',
119
- lmsBaseUrl: '',
120
-
121
- // Optional
122
- environment: EnvironmentTypes.PRODUCTION,
123
- apps: [],
124
- externalRoutes: [],
125
- externalLinkUrlOverrides: [],
126
- mfeConfigApiUrl: null,
127
- theme: {},
128
- accessTokenCookieName: 'edx-jwt-cookie-header-payload',
129
- csrfTokenApiPath: '/csrf/api/v1/token',
130
- ignoredErrorRegex: null,
131
- languagePreferenceCookieName: 'openedx-language-preference',
132
- refreshAccessTokenApiPath: '/login_refresh',
133
- userInfoCookieName: 'edx-user-info',
134
- segmentKey: null,
135
- };
136
-
137
- /**
138
- * Getter for the application configuration document. This is synchronous and merely returns a
139
- * reference to an existing object, and is thus safe to call as often as desired.
140
- *
141
- * Example:
142
- *
143
- * ```
144
- * import { getSiteConfig } from '@openedx/frontend-base';
145
- *
146
- * const {
147
- * lmsBaseUrl,
148
- * } = getSiteConfig();
149
- * ```
150
- *
151
- * @returns {SiteConfig}
152
- */
153
- export function getSiteConfig() {
154
- return siteConfig;
155
- }
156
-
157
- /**
158
- * Replaces the existing SiteConfig. This is not commonly used, but can be helpful for tests.
159
- *
160
- * Example:
161
- *
162
- * ```
163
- * import { setSiteConfig } from '@openedx/frontend-base';
164
- *
165
- * setSiteConfig({
166
- * lmsBaseUrl, // This is overriding the ENTIRE document - this is not merged in!
167
- * });
168
- * ```
169
- *
170
- * @param newConfig A replacement SiteConfig which will completely override the current SiteConfig.
171
- */
172
- export function setSiteConfig(newSiteConfig: SiteConfig) {
173
- siteConfig = newSiteConfig;
174
- publish(CONFIG_CHANGED);
175
- }
176
-
177
- /**
178
- * Merges additional configuration values into the site config returned by `getSiteConfig`. Will
179
- * override any values that exist with the same keys.
180
- *
181
- * ```
182
- * mergeSiteConfig({
183
- * NEW_KEY: 'new value',
184
- * OTHER_NEW_KEY: 'other new value',
185
- * });
186
- *
187
- * This function uses lodash.merge internally to merge configuration objects
188
- * which means they will be merged recursively. See https://lodash.com/docs/latest#merge for
189
- * documentation on the exact behavior.
190
- *
191
- * @param {Object} newSiteConfig
192
- */
193
- export function mergeSiteConfig(newSiteConfig: Partial<SiteConfig>) {
194
- siteConfig = merge(siteConfig, newSiteConfig);
195
- publish(CONFIG_CHANGED);
196
- }
197
-
198
- const appConfigs: Record<string, AppConfig> = {};
199
-
200
- /**
201
- * addAppConfigs finds any AppConfig objects in the apps in SiteConfig and makes their config
202
- * available to be used by Apps via getAppConfig(appId) or useAppConfig() functions. This is
203
- * used at initialization time to process any AppConfigs bundled with the site.
204
- */
205
- export function addAppConfigs() {
206
- const { apps } = getSiteConfig();
207
- if (!apps) return;
208
-
209
- for (const app of apps) {
210
- const { appId, config } = app;
211
- if (config !== undefined) {
212
- appConfigs[appId] = config;
213
- }
214
- }
215
-
216
- publish(CONFIG_CHANGED);
217
- }
218
-
219
- export function getAppConfig(id: string) {
220
- return appConfigs[id];
221
- }
222
-
223
- export function mergeAppConfig(id: string, newAppConfig: AppConfig) {
224
- appConfigs[id] = merge(appConfigs[id], newAppConfig);
225
- publish(CONFIG_CHANGED);
226
- }
227
-
228
- let activeRouteRoles: string[] = [];
229
-
230
- export function setActiveRouteRoles(roles: string[]) {
231
- activeRouteRoles = roles;
232
- publish(ACTIVE_ROLES_CHANGED);
233
- }
234
-
235
- export function getActiveRouteRoles() {
236
- return activeRouteRoles;
237
- }
238
-
239
- const activeWidgetRoles: Record<string, number> = {};
240
-
241
- export function addActiveWidgetRole(role: string) {
242
- activeWidgetRoles[role] ??= 0;
243
- activeWidgetRoles[role] += 1;
244
- publish(ACTIVE_ROLES_CHANGED);
245
- }
246
-
247
- export function removeActiveWidgetRole(role: string) {
248
- if (activeWidgetRoles[role] !== undefined) {
249
- activeWidgetRoles[role] -= 1;
250
- }
251
- if (activeWidgetRoles[role] < 1) {
252
- delete activeWidgetRoles[role];
253
- }
254
- publish(ACTIVE_ROLES_CHANGED);
255
- }
256
-
257
- export function getActiveWidgetRoles() {
258
- return Object.entries(activeWidgetRoles)
259
- .filter(([, count]: [role: string, count: number]) => count !== undefined && count > 0)
260
- .map(([role]: [role: string, count: number]) => role);
261
- }
262
-
263
- // Gets all active roles from the route roles and widget roles.
264
- export function getActiveRoles() {
265
- return [...getActiveRouteRoles(), ...getActiveWidgetRoles()];
266
- }
267
-
268
- /**
269
- * Get an external link URL based on the URL provided. If the passed in URL is overridden in the
270
- * `externalLinkUrlOverrides` object, it will return the overridden URL. Otherwise, it will return
271
- * the provided URL.
272
- *
273
- *
274
- * @param {string} url - The default URL.
275
- * @returns {string} - The external link URL. Defaults to the input URL if not found in the
276
- * `externalLinkUrlOverrides` object. If the input URL is invalid, '#' is returned.
277
- *
278
- * @example
279
- * import { getExternalLinkUrl } from '@openedx/frontend-base';
280
- *
281
- * <Hyperlink
282
- * destination={getExternalLinkUrl(data.helpLink)}
283
- * target="_blank"
284
- * >
285
- */
286
- export function getExternalLinkUrl(url: string): string {
287
- // Guard against whitespace-only strings
288
- if (typeof url !== 'string' || !url.trim()) {
289
- return '#';
290
- }
291
-
292
- const overriddenLinkUrls = getSiteConfig().externalLinkUrlOverrides ?? {};
293
- return overriddenLinkUrls[url] ?? url;
294
- }
@@ -1,68 +0,0 @@
1
- /** @constant */
2
- export const SITE_TOPIC = 'APP';
3
-
4
- export const SITE_PUBSUB_INITIALIZED = `${SITE_TOPIC}.PUBSUB_INITIALIZED`;
5
-
6
- /**
7
- * Event published when the application initialization sequence has finished loading any dynamic
8
- * configuration setup in a custom config handler.
9
- *
10
- * @event
11
- */
12
- export const SITE_CONFIG_INITIALIZED = `${SITE_TOPIC}.CONFIG_INITIALIZED`;
13
-
14
- /**
15
- * Event published when the application initialization sequence has finished determining the user's
16
- * authentication state, creating an authenticated API client, and executing auth handlers.
17
- *
18
- * @event
19
- */
20
- export const SITE_AUTH_INITIALIZED = `${SITE_TOPIC}.AUTH_INITIALIZED`;
21
-
22
- /**
23
- * Event published when the application initialization sequence has finished initializing
24
- * internationalization and executing any i18n handlers.
25
- *
26
- * @event
27
- */
28
- export const SITE_I18N_INITIALIZED = `${SITE_TOPIC}.I18N_INITIALIZED`;
29
-
30
- /**
31
- * Event published when the application initialization sequence has finished initializing the
32
- * logging service and executing any logging handlers.
33
- *
34
- * @event
35
- */
36
- export const SITE_LOGGING_INITIALIZED = `${SITE_TOPIC}.LOGGING_INITIALIZED`;
37
-
38
- /**
39
- * Event published when the application initialization sequence has finished initializing the
40
- * analytics service and executing any analytics handlers.
41
- *
42
- * @event
43
- */
44
- export const SITE_ANALYTICS_INITIALIZED = `${SITE_TOPIC}.ANALYTICS_INITIALIZED`;
45
-
46
- /**
47
- * Event published when the application initialization sequence has finished. Applications should
48
- * subscribe to this event and start rendering the UI when it has fired.
49
- *
50
- * @event
51
- */
52
- export const SITE_READY = `${SITE_TOPIC}.READY`;
53
-
54
- /**
55
- * Event published when the application initialization sequence has aborted. This is frequently
56
- * used to show an error page when an initialization error has occurred.
57
- *
58
- * @see {@link module:React~ErrorPage}
59
- * @event
60
- */
61
- export const SITE_INIT_ERROR = `${SITE_TOPIC}.INIT_ERROR`;
62
-
63
- /** @constant */
64
- export const CONFIG_TOPIC = 'CONFIG';
65
-
66
- export const CONFIG_CHANGED = `${CONFIG_TOPIC}.CHANGED`;
67
-
68
- export const ACTIVE_ROLES_CHANGED = 'ACTIVE_ROLES_CHANGED';
@@ -1,118 +0,0 @@
1
- /**
2
- * #### Import members from **@openedx/frontend-base**
3
- * The i18n module relies on react-intl and re-exports all of that package's exports.
4
- *
5
- * For each locale we want to support, react-intl needs 1) the locale-data, which includes
6
- * information about how to format numbers, handle plurals, etc., and 2) the translations, as an
7
- * object holding message id / translated string pairs. A locale string and the messages object are
8
- * passed into the IntlProvider element that wraps your element hierarchy.
9
- *
10
- * Note that react-intl has no way of checking if the translations you give it actually have
11
- * anything to do with the locale you pass it; it will happily use whatever messages object you pass
12
- * in. However, if the locale data for the locale you passed into the IntlProvider was not
13
- * correctly installed with addLocaleData, all of your translations will fall back to the default
14
- * (in our case English), *even if you gave IntlProvider the correct messages object for that
15
- * locale*.
16
- *
17
- * Messages are provided to this module via the configureI18n() function below.
18
- *
19
- *
20
- * @module Internationalization
21
- * @see {@link https://github.com/openedx/frontend-base/blob/master/docs/how_tos/i18n.rst}
22
- * @see {@link https://formatjs.io/docs/react-intl/components/ Intl} for components exported from this module.
23
- *
24
- */
25
-
26
- /**
27
- * @name createIntl
28
- * @kind function
29
- * @see {@link https://formatjs.io/docs/react-intl/api#createIntl Intl}
30
- */
31
-
32
- /**
33
- * @name FormattedDate
34
- * @kind class
35
- * @see {@link https://formatjs.io/docs/react-intl/components/#formatteddate Intl}
36
- */
37
-
38
- /**
39
- * @name FormattedTime
40
- * @kind class
41
- * @see {@link https://formatjs.io/docs/react-intl/components/#formattedtime Intl}
42
- */
43
-
44
- /**
45
- * @name FormattedRelativeTime
46
- * @kind class
47
- * @see {@link https://formatjs.io/docs/react-intl/components/#formattedrelativetime Intl}
48
- */
49
-
50
- /**
51
- * @name FormattedNumber
52
- * @kind class
53
- * @see {@link https://formatjs.io/docs/react-intl/components/#formattednumber Intl}
54
- */
55
-
56
- /**
57
- * @name FormattedPlural
58
- * @kind class
59
- * @see {@link https://formatjs.io/docs/react-intl/components/#formattedplural Intl}
60
- */
61
-
62
- /**
63
- * @name FormattedMessage
64
- * @kind class
65
- * @see {@link https://formatjs.io/docs/react-intl/components/#formattedmessage Intl}
66
- */
67
-
68
- /**
69
- * @name IntlProvider
70
- * @kind class
71
- * @see {@link https://formatjs.io/docs/react-intl/components/#intlprovider Intl}
72
- */
73
-
74
- /**
75
- * @name defineMessages
76
- * @kind function
77
- * @see {@link https://formatjs.io/docs/react-intl/api#definemessagesdefinemessage Intl}
78
- */
79
-
80
- /**
81
- * @name useIntl
82
- * @kind function
83
- * @see {@link https://formatjs.io/docs/react-intl/api#useIntl Intl}
84
- */
85
-
86
- export {
87
- createIntl,
88
- defineMessages,
89
- FormattedDate,
90
- FormattedMessage,
91
- FormattedNumber,
92
- FormattedPlural,
93
- FormattedRelativeTime,
94
- FormattedTime,
95
- IntlProvider,
96
- useIntl
97
- } from 'react-intl';
98
-
99
- export {
100
- addAppMessages,
101
- configureI18n,
102
- getLocale,
103
- getLocalizedLanguageName,
104
- getMessages,
105
- getPrimaryLanguageSubtag,
106
- getSupportedLanguageList,
107
- handleRtl,
108
- intlShape,
109
- isRtl,
110
- LOCALE_CHANGED,
111
- LOCALE_TOPIC,
112
- mergeMessages,
113
- updateLocale
114
- } from './lib';
115
-
116
- export {
117
- default as injectIntl
118
- } from './injectIntlWithShim';
@@ -1,48 +0,0 @@
1
- import React from 'react';
2
- import { injectIntl } from 'react-intl';
3
- import { EnvironmentTypes } from '../../types';
4
- import { getSiteConfig } from '../config';
5
- import { getLoggingService } from '../logging';
6
- import { intlShape } from './lib';
7
-
8
- /**
9
- * This function wraps react-intl's injectIntl function in order to add error logging to the intl
10
- * property's formatMessage function.
11
- *
12
- * @memberof I18n
13
- */
14
- const injectIntlWithShim = (WrappedComponent) => {
15
- class ShimmedIntlComponent extends React.Component {
16
- constructor(props) {
17
- super(props);
18
- this.shimmedIntl = Object.create(this.props.intl, {
19
- formatMessage: {
20
- value: (definition, ...args) => {
21
- if (definition === undefined || definition.id === undefined) {
22
- const error = new Error('i18n error: An undefined message was supplied to intl.formatMessage.');
23
- if (getSiteConfig().environment === EnvironmentTypes.DEVELOPMENT) {
24
- console.error(error); // eslint-disable-line no-console
25
- return '!!! Missing message supplied to intl.formatMessage !!!';
26
- }
27
- getLoggingService().logError(error);
28
- return ''; // Fail silently in production
29
- }
30
- return this.props.intl.formatMessage(definition, ...args);
31
- },
32
- },
33
- });
34
- }
35
-
36
- render() {
37
- return <WrappedComponent {...this.props} intl={this.shimmedIntl} />;
38
- }
39
- }
40
-
41
- ShimmedIntlComponent.propTypes = {
42
- intl: intlShape.isRequired,
43
- };
44
-
45
- return injectIntl(ShimmedIntlComponent);
46
- };
47
-
48
- export default injectIntlWithShim;